每當我重新啓動應用程序,它是建立在 的Java Struts的 MySQL和Jboss的4.05版本有時候 我得到的誤差已在使用地址:JVM_Bind地址已在使用:JVM_Bind的Java
只有解決我知道的是重新啓動機器,然後再試一次,它會起作用。 否則有時候我會按Ctrl-Alt-Del並停止所有與Java相關的進程,有時候這也會起作用。
但是確切的原因是什麼,我們如何防止這個問題呢?
每當我重新啓動應用程序,它是建立在 的Java Struts的 MySQL和Jboss的4.05版本有時候 我得到的誤差已在使用地址:JVM_Bind地址已在使用:JVM_Bind的Java
只有解決我知道的是重新啓動機器,然後再試一次,它會起作用。 否則有時候我會按Ctrl-Alt-Del並停止所有與Java相關的進程,有時候這也會起作用。
但是確切的原因是什麼,我們如何防止這個問題呢?
地址已在使用:JVM_Bind
意味着一些其他的應用程序已經聽您的當前應用程序試圖綁定端口。
你需要做的是,爲你當前的應用程序或更好的端口;只需找出已經運行的應用程序並殺死它。
在Linux上,你可以找到通過使用應用程序的PID,
netstat -tulpn
您如何在Windows中找到我正在Windows上運行我的應用程序 – gmhk 2010-05-05 11:47:38
netstat也可以在windows上運行控制檯嘗試:netstat -an 獲取更多信息,http://en.wikipedia.org/wiki/Netstat – phoenix24 2010-05-05 12:02:33
另一個建議是不要在Windows上運行應用程序服務器。 否則,它也可能有助於不點擊重啓按鈕 - 而是停止,等待5秒鐘,然後再次手動啓動。有時候java進程只需要一點時間關閉。例如,如果他們忙於數據庫操作,他們往往會一直掛起,直到完成操作。 – rompetroll 2010-05-05 12:43:46
有關如何防止它的快速回答是,在重新啓動它之前,最有可能需要停止JBoss。
您應該能夠在控制檯視圖中調用「終止」按鈕來關閉服務器。
我從Eclipse啓動JBoss – gmhk 2010-05-05 11:32:39
是否有可能是MySQL同一端口的JBoss上聽嗎?
是否有錯誤信息中給出端口號 - 像Address already in use: JVM_Bind:8080
可以更改端口的JBoss server.xml中進行測試。
該錯誤表示您正嘗試在另一個ServerSocket
正在使用的端口上創建新的ServerSocket
。因此,請儘量讓您的應用程序關閉您瞭解的所有套接字和連接,並確保您的應用程序已完全終止。還要檢查你的程序是否啓動了另一個程序。
我經常遇到這樣當端口的服務器(我使用JBoss)已經在使用
秋後算賬
要改變到的JBoss 4.2.x版結合本身去港口:
「」C:\ jboss4.2.2 \ server \ default \ deploy \ jboss-web.deployer \ server。XML」
這裏默認的是服務器的實例 改變這裏的端口:
<連接器端口= 「8080」 地址= 「$ {} jboss.bind.address」 >
在上述例子中的端口綁定到8080
關閉Skype並運行你的Java應用程序,然後調出Skype。 – signonsridhar 2016-10-17 21:18:35
請嘗試以下選項對JVM結合EXCE ption:
我也有這個問題。對於我來說,我無法啓動/停止的Openfire(該公司表示,已停止,但一切仍在運行)
sudo /etc/init.d/openfire stop
sudo /etc/init.d/openfire start
此外,重啓動Apache並沒有幫助
sudo /etc/init.d/apache2 restart
的誤差在裏面:
/opt/openfire/logs/stderror.log
Error creating server listener on port 5269: Address already in use
Error creating server listener on port 5222: Address already in use
我解決這個問題的方式,我不得不關閉服務器在我的主機管理區域內。
它可以在.. \ tomcat的也造成端口8080的雙重定義\的conf \ server.xml中:
<Connector port="8080"
enableLookups="false" redirectPort="8443" debug="0"/>
<Connector port="8080"
enableLookups="false" address="127.0.0.1" maxParameterCount="30000"/>
在windows這種情況發生在Eclipse的崩潰沒有一個乾淨關閉,將有本地Jetty或Tomcat服務器繼續運行。 當你重新打開Eclipse並嘗試再次啓動服務器時,這將導致「地址已被使用:JVM_Bind」
您可以通過打開任務管理器並找到javaw.exe進程並結束它來解決此問題。
然後您可以在Eclipse上重新啓動服務器。
我已經在Windows上是相同的。我的解決方案是獲取調試想要連接到的端口。 (在IntelliJ中,一個紅色矩形已經給出了信息:「運行Tomcat時出錯:無法打開調試器端口(127.0.0.1:XXXXX):...已經在使用中......」) 假設XXXXX是端口號。 然後我搜索的問題和PID在cmd窗口:
netstat -ano | find "CLOSE_WAIT" | find ":XXXXX"
我得到的PID號在結果行的最後一個數字。(比方說,YYYY) 最後:
TASKKILL /PID YYYY
一個額外的信息:WINSCP同時註銷了,大概這是造成我的問題。 :)
這最近發生在Eclipse上的兩個正在運行的Tomcat服務上啓用JMX時。我錯誤地把每個服務器的相同端口。
只需給每個JMX遠程不同的端口
服務器1
-Dcom.sun.management.jmxremote.port=9000
服務器2
-Dcom.sun.management.jmxremote.port=9001
有時端口所有權不散,堅持你的Java程序關閉即使它。但是,在Eclipse Java EE中,除了程序之外,端口綁定被刪除 – CodyBugstein 2014-06-24 03:59:33