Ошибка запуска Tomcat
Я получаю следующую ошибку в файле журнала Catalina при запуске Tomcat в Windows:
Sep 3, 2010 3:22:53 PM org.apache.catalina.startup.Catalina start
SEVERE: Catalina.start:
LifecycleException: service.getName(): "Catalina"; Protocol handler start failed: java.lang.Exception: Socket bind failed: [730048] Only one usage of each socket address (protocol/network address/port) is normally permitted.
at org.apache.catalina.connector.Connector.start(Connector.java:1138)
at org.apache.catalina.core.StandardService.start(StandardService.java:531)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
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.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Sep 3, 2010 3:22:53 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 67604 ms
Но когда я изменил номер порта от 8080
до 9000
, тогда не было ошибки, но запрос http://localhost:9000/ дает ошибку 404 The requested resource (/) is not available
.
Я что-то пропустил?
Ответы
Ответ 1
В одном приложении используется порт 8080. Чтобы узнать, какой из них, используйте следующую команду в подсказке DOS:
C:\>netstat -aon | findstr 0.0:8080
Затем возьмите номер в последнем столбце (идентификатор процесса) и узнайте, какой процесс находится в диспетчере задач. Если ничего не выходит из команды, то у вас нет приложения, использующего этот порт.
Ответ 2
C:\>netstat -aon | findstr 0.0:8080
Это устранило это, просто очистив процесс с помощью этого id от процессов и перезапустив TomCat.
Ответ 3
Вам нужно запустить tomcat на порту 80 как пользователь root.Другого порта нет.
Ответ 4
Другой процесс использует этот порт (возможно, другой экземпляр Tomcat).
Если вы не хотите использовать другой порт для своего фактического экземпляра Tomcat, вам нужно убить этот процесс.
CMD