2016-11-16 10 views
1

Заранее благодарим за любую помощь!Tomcat начинается с java.net.BindException: адрес уже используется Исключение

Я рассмотрел ВСЕ связанные сообщения в stackoverflow, и никто не ответил на мою проблему.

Контекст:

для Windows 10, Eclipse Neon.1 Release (4.6.1) с поддержкой Java и Tomcat 1. все это работает на MacBook Pro под управлением MacOS Sierra 10.12.1 в Parallels Desktop 12 для Mac Pro Edition 12.1.0 virtual Windows 10.

Когда я запускаю Eclipse, все в порядке.

При нажатии на кнопку запуска Eclipse, Tomcat я получаю эти исключения:

16-Nov-2016 10:55:10 AM org.apache.catalina.core.AprLifecycleListener init 
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre6\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Program Files (x86)\Parallels\Parallels Tools\Applications;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Java\jdk1.8.0_102;C:\Program Files (x86)\Skype\Phone\;C:\Program Files (x86)\Private Shell;C:\PROGRA~2\COMMON~1\Odbc\FILEMA~1;C:\Users\terry.QUANTECH\AppData\Local\Microsoft\WindowsApps;;. 
16-Nov-2016 10:55:10 AM org.apache.coyote.http11.Http11Protocol init 
INFO: Initializing Coyote HTTP/1.1 on http-8080 
16-Nov-2016 10:55:10 AM org.apache.coyote.http11.Http11Protocol init 
SEVERE: Error initializing endpoint 
java.net.BindException: Address already in use: JVM_Bind <null>:8080 
    at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:563) 
    at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:181) 
    at org.apache.catalina.connector.Connector.initialize(Connector.java:1141) 
    at org.apache.catalina.core.StandardService.initialize(StandardService.java:703) 
    at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:843) 
    at org.apache.catalina.startup.Catalina.load(Catalina.java:538) 
    at org.apache.catalina.startup.Catalina.load(Catalina.java:562) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:261) 
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) 
Caused by: java.net.BindException: Address already in use: JVM_Bind 
    at java.net.PlainSocketImpl.socketBind(Native Method) 
    at java.net.PlainSocketImpl.bind(Unknown Source) 
    at java.net.ServerSocket.bind(Unknown Source) 
    at java.net.ServerSocket.<init>(Unknown Source) 
    at java.net.ServerSocket.<init>(Unknown Source) 
    at org.apache.tomcat.util.net.DefaultServerSocketFactory.createSocket(DefaultServerSocketFactory.java:50) 
    at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:552) 
    ... 12 more 
16-Nov-2016 10:55:10 AM org.apache.catalina.core.StandardService initialize 
SEVERE: Failed to initialize connector [Connector[HTTP/1.1-8080]] 
LifecycleException: Protocol handler initialization failed: java.net.BindException: Address already in use: JVM_Bind <null>:8080 
    at org.apache.catalina.connector.Connector.initialize(Connector.java:1143) 
    at org.apache.catalina.core.StandardService.initialize(StandardService.java:703) 
    at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:843) 
    at org.apache.catalina.startup.Catalina.load(Catalina.java:538) 
    at org.apache.catalina.startup.Catalina.load(Catalina.java:562) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:261) 
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) 
16-Nov-2016 10:55:11 AM org.apache.coyote.http11.Http11Protocol init 
INFO: Initializing Coyote HTTP/1.1 on http-8443 
16-Nov-2016 10:55:11 AM org.apache.catalina.startup.Catalina load 
INFO: Initialization processed in 583 ms 
16-Nov-2016 10:55:11 AM org.apache.catalina.core.StandardService start 
INFO: Starting service Catalina 
16-Nov-2016 10:55:11 AM org.apache.catalina.core.StandardEngine start 
INFO: Starting Servlet Engine: Apache Tomcat/6.0.45 
16-Nov-2016 10:55:11 AM org.apache.catalina.startup.HostConfig deployDescriptor 
INFO: Deploying configuration descriptor gomenu.xml 
16-Nov-2016 10:55:11 AM org.apache.catalina.startup.HostConfig deployDescriptor 
WARNING: A docBase C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\gomenu inside the host appBase has been specified, and will be ignored 
16-Nov-2016 10:55:11 AM org.apache.catalina.startup.HostConfig deployDescriptor 
INFO: Deploying configuration descriptor gps.xml 
16-Nov-2016 10:55:11 AM org.apache.catalina.startup.HostConfig deployDescriptor 
WARNING: A docBase C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\gps inside the host appBase has been specified, and will be ignored 

т.д.

Я смотрю на то, что работает на порту 8080 с помощью TCPView и посмотреть:

javaw.exe 1676 TCP TerryWin10onMac 8080 TerryWin10onMac 0 LISTENING          
javaw.exe 1676 TCPV6 terrywin10onmac.quantechsoftware.local 8080 terrywin10onmac.quantechsoftware.local 0 LISTENING          

Итак, это Java и предположительно Tomcat, который дважды схватил порт 8080.

Я останавливаю Tomcat, закрываю Eclipse и вижу, что все ссылки в TCPView на порт 8080 исчезают.

Я начинаю Eclipse. TCPView еще не показывает ссылки на порт 8080.

я начинаю Tomcat и увидеть, что целая куча вещей появляются в TCPView, два из которых относятся к порту 8009 и два 8080:

javaw.exe 7076 TCP TerryWin10onMac 8005 TerryWin10onMac 0 LISTENING     
javaw.exe 7076 TCP TerryWin10onMac 8009 TerryWin10onMac 0 LISTENING     
javaw.exe 7076 TCPV6 terrywin10onmac.quantechsoftware.local 8009 terrywin10onmac.quantechsoftware.local 0 LISTENING     
javaw.exe 7076 TCP TerryWin10onMac 8080 TerryWin10onMac 0 LISTENING     
javaw.exe 7076 TCPV6 terrywin10onmac.quantechsoftware.local 8080 terrywin10onmac.quantechsoftware.local 0 LISTENING     
javaw.exe 7076 TCP TerryWin10onMac 8443 TerryWin10onMac 0 LISTENING     
javaw.exe 7076 TCPV6 terrywin10onmac.quantechsoftware.local 8443 terrywin10onmac.quantechsoftware.local 0 LISTENING     

И, Конечно, все те же исключения, что и раньше.

Я попытался убить один из 8080 процессов, но оба они имеют одинаковый идентификатор процесса! Фактически, все прослушиватели портов, показанные выше, имеют одинаковый PID.

Это не вариант для меня изменить порт.

Любая помощь с этим абсолютно была бы признательна.

Большое спасибо,

Терри Kilshaw

+0

У вас есть копия Tomcat * installed * и работает как служба? Вам придется остановить его, если вы не хотите менять номера портов. – nitind

ответ

0

+1 за подробное описание ваших исследований.

Я рекомендую вам просмотреть файл <tomcat_home>\conf\server.xml и проверить все объявленные порты. Возможно, 8080 повторяется.

И выполните ту же проверку в конфигурации сервера Eclipse: см., Что номера портов не повторяются.