`
qindongliang1922
  • 浏览: 2145304 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
7265517b-f87e-3137-b62c-5c6e30e26109
证道Lucene4
浏览量:116259
097be4a0-491e-39c0-89ff-3456fadf8262
证道Hadoop
浏览量:124512
41c37529-f6d8-32e4-8563-3b42b2712a50
证道shell编程
浏览量:58370
43832365-bc15-3f5d-b3cd-c9161722a70c
ELK修真
浏览量:70306
社区版块
存档分类
最新评论

如何在Windows下查看JAVA端口占用明细

    博客分类:
  • JAVA
阅读更多
在linux想要查看某个端口的占用情况,我们可以使用ps -ef | grep 端口号来查看某个进程的端口占用情况,那么在windows上,如何查看呢?

起因:散仙在win7上启动jetty时,发生端口占用,日志异常如下:
main{StandardDirectoryReader(segments_1:1:nrt)}
INFO  - 2014-11-18 11:11:29.780; org.apache.solr.core.CoreContainer; registering core: collection1
INFO  - 2014-11-18 11:11:29.786; org.apache.solr.servlet.SolrDispatchFilter; user.dir=D:\solr4.7-jetty
INFO  - 2014-11-18 11:11:29.788; org.apache.solr.servlet.SolrDispatchFilter; SolrDispatchFilter.init() done
INFO  - 2014-11-18 11:11:29.822; org.apache.solr.core.SolrCore; [collection1] webapp=null path=null params={event=firstSearcher&q=static+firstSearcher+warming+in+solrconfig.xml&distrib=false} hits=0 status=0 QTime=37 
WARN  - 2014-11-18 11:11:29.824; org.eclipse.jetty.util.component.AbstractLifeCycle; FAILED SocketConnector@0.0.0.0:8983: java.net.BindException: Address already in use: JVM_Bind
java.net.BindException: Address already in use: JVM_Bind
	at java.net.DualStackPlainSocketImpl.bind0(Native Method)
	at java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:96)
	at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:376)
	at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:175)
	at java.net.ServerSocket.bind(ServerSocket.java:376)
	at java.net.ServerSocket.<init>(ServerSocket.java:237)
	at java.net.ServerSocket.<init>(ServerSocket.java:181)
	at org.eclipse.jetty.server.bio.SocketConnector.newServerSocket(SocketConnector.java:96)
	at org.eclipse.jetty.server.bio.SocketConnector.open(SocketConnector.java:85)
	at org.eclipse.jetty.server.AbstractConnector.doStart(AbstractConnector.java:316)
	at org.eclipse.jetty.server.bio.SocketConnector.doStart(SocketConnector.java:156)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
	at org.eclipse.jetty.server.Server.doStart(Server.java:291)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
	at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1259)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1182)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at org.eclipse.jetty.start.Main.invokeMain(Main.java:473)
	at org.eclipse.jetty.start.Main.start(Main.java:615)
	at org.eclipse.jetty.start.Main.main(Main.java:96)
INFO  - 2014-11-18 11:11:29.825; org.apache.solr.core.QuerySenderListener; QuerySenderListener done.
WARN  - 2014-11-18 11:11:29.850; org.eclipse.jetty.util.component.AbstractLifeCycle; FAILED org.eclipse.jetty.server.Server@66b6d1a8: java.net.BindException: Address already in use: JVM_Bind
java.net.BindException: Address already in use: JVM_Bind
	at java.net.DualStackPlainSocketImpl.bind0(Native Method)
	at java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:96)
	at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:376)
	at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:175)
	at java.net.ServerSocket.bind(ServerSocket.java:376)
	at java.net.ServerSocket.<init>(ServerSocket.java:237)
	at java.net.ServerSocket.<init>(ServerSocket.java:181)
	at org.eclipse.jetty.server.bio.SocketConnector.newServerSocket(SocketConnector.java:96)
	at org.eclipse.jetty.server.bio.SocketConnector.open(SocketConnector.java:85)
	at org.eclipse.jetty.server.AbstractConnector.doStart(AbstractConnector.java:316)
	at org.eclipse.jetty.server.bio.SocketConnector.doStart(SocketConnector.java:156)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
	at org.eclipse.jetty.server.Server.doStart(Server.java:291)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
	at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1259)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1182)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)



从异常中,我们可以轻易看出是8983端口,被占用了,然后再次启动时,出现叠加端口,就会报上述异常,那么如何定位,查找,占用的端口号呢?



1,打开windows上的cmd窗口
2,使用netstat -aon | findstr "8983"查看端口所在进程
3,然后使用tasklist | findstr "进程id" 找出具体的程序所在主服务
4,最后使用taskkill /f /t /im 进程名称 杀死进程

截图如下:






定位到异常所在服务后,查看有关服务,是否冲突,然后关掉即可(关掉之前,确认是否真的可以停掉,以免影响一些其他的服务,正常运行)!

  • 大小: 131.2 KB
2
0
分享到:
评论
2 楼 qindongliang1922 2014-11-19  
随便小屋 写道
     

   
1 楼 随便小屋 2014-11-19  
     

相关推荐

Global site tag (gtag.js) - Google Analytics