当我在eclipse上启动tomcat时,我得到了这个消息:
本地主机上的Tomcat v6.0 Server所需的端口8009已被使用。 服务器可能已经在另一个进程中运行,或者系统进程可能正在使用该端口。 要启动此服务器,您需要停止另一个进程或更改端口号。
当我手动启动tomcat时,它给了我这个exception跟踪:
C:\apache-tomcat-6\bin>catalina.bat run Using CATALINA_BASE: "C:\apache-tomcat-6" Using CATALINA_HOME: "C:\apache-tomcat-6" Using CATALINA_TMPDIR: "C:\apache-tomcat-6\temp" Using JRE_HOME: "C:\Program Files\Java\jdk1.6.0_20" Using CLASSPATH: "C:\apache-tomcat-6\bin\bootstrap.jar" Dec 14, 2011 11:32:17 AM org.apache.catalina.core.AprLifecycleListener init INFO: Loaded APR based Apache Tomcat Native library 1.1.22. Dec 14, 2011 11:32:17 AM org.apache.catalina.core.AprLifecycleListener init INFO: APR capabilities: IPv6 [false], sendfile [true], accept filters [false], r andom [true]. Dec 14, 2011 11:32:20 AM org.apache.coyote.http11.Http11AprProtocol init INFO: Initializing Coyote HTTP/1.1 on http-8080 Dec 14, 2011 11:32:20 AM org.apache.coyote.ajp.AjpAprProtocol init SEVERE: Error initializing endpoint java.lang.Exception: Socket bind failed: [730048] Only one usage of each socket address (protocol/network address/port) is normally permitted. at org.apache.tomcat.util.net.AprEndpoint.init(AprEndpoint.java:649) at org.apache.coyote.ajp.AjpAprProtocol.init(AjpAprProtocol.java:160) at org.apache.catalina.connector.Connector.initialize(Connector.java:104 9) at org.apache.catalina.core.StandardService.initialize(StandardService.j ava:703) at org.apache.catalina.core.StandardServer.initialize(StandardServer.jav a:838) 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(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:261) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) Dec 14, 2011 11:32:20 AM org.apache.catalina.core.StandardService initialize SEVERE: Failed to initialize connector [Connector[AJP/1.3-8009]] LifecycleException: Protocol handler initialization failed: java.lang.Exception : Socket bind failed: [730048] Only one usage of each socket address (protocol/n etwork address/port) is normally permitted. at org.apache.catalina.connector.Connector.initialize(Connector.java:105 1) at org.apache.catalina.core.StandardService.initialize(StandardService.j ava:703) at org.apache.catalina.core.StandardServer.initialize(StandardServer.jav a:838) 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(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:261) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) Dec 14, 2011 11:32:20 AM org.apache.catalina.startup.Catalina load INFO: Initialization processed in 5684 ms Dec 14, 2011 11:32:21 AM org.apache.catalina.core.StandardService start INFO: Starting service Catalina Dec 14, 2011 11:32:21 AM org.apache.catalina.core.StandardEngine start INFO: Starting Servlet Engine: Apache Tomcat/6.0.35 Dec 14, 2011 11:32:21 AM org.apache.catalina.startup.HostConfig deployDescriptor INFO: Deploying configuration descriptor host-manager.xml Dec 14, 2011 11:32:23 AM org.apache.catalina.startup.HostConfig deployDescriptor INFO: Deploying configuration descriptor manager.xml Dec 14, 2011 11:32:23 AM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deploying web application directory docs Dec 14, 2011 11:32:23 AM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deploying web application directory examples Dec 14, 2011 11:32:24 AM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deploying web application directory ROOT Dec 14, 2011 11:32:24 AM org.apache.coyote.http11.Http11AprProtocol start INFO: Starting Coyote HTTP/1.1 on http-8080 Dec 14, 2011 11:32:24 AM org.apache.coyote.ajp.AjpAprProtocol start SEVERE: Error starting endpoint java.lang.Exception: Socket bind failed: [730048] Only one usage of each socket address (protocol/network address/port) is normally permitted. at org.apache.tomcat.util.net.AprEndpoint.init(AprEndpoint.java:649) at org.apache.tomcat.util.net.AprEndpoint.start(AprEndpoint.java:766) at org.apache.coyote.ajp.AjpAprProtocol.start(AjpAprProtocol.java:188) at org.apache.catalina.connector.Connector.start(Connector.java:1122) at org.apache.catalina.core.StandardService.start(StandardService.java:5 40) at org.apache.catalina.core.StandardServer.start(StandardServer.java:754 ) at org.apache.catalina.startup.Catalina.start(Catalina.java:595) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414) Dec 14, 2011 11:32:24 AM org.apache.catalina.core.StandardService start SEVERE: Failed to start connector [Connector[AJP/1.3-8009]] LifecycleException: service.getName(): "Catalina"; Protocol handler start fail ed: java.lang.Exception: Socket bind failed: [730048] Only one usage of each soc ket address (protocol/network address/port) is normally permitted. at org.apache.catalina.connector.Connector.start(Connector.java:1129) at org.apache.catalina.core.StandardService.start(StandardService.java:5 40) at org.apache.catalina.core.StandardServer.start(StandardServer.java:754 ) at org.apache.catalina.startup.Catalina.start(Catalina.java:595) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414) Dec 14, 2011 11:32:24 AM org.apache.catalina.startup.Catalina start INFO: Server startup in 3966 ms Dec 14, 2011 11:33:25 AM org.apache.coyote.http11.Http11AprProtocol pause INFO: Pausing Coyote HTTP/1.1 on http-8080 Dec 14, 2011 11:33:25 AM org.apache.coyote.ajp.AjpAprProtocol pause INFO: Pausing Coyote AJP/1.3 on ajp-8009 Dec 14, 2011 11:33:26 AM org.apache.catalina.core.StandardService stop INFO: Stopping service Catalina Dec 14, 2011 11:33:26 AM org.apache.coyote.http11.Http11AprProtocol destroy INFO: Stopping Coyote HTTP/1.1 on http-8080 Dec 14, 2011 11:33:26 AM org.apache.coyote.ajp.AjpAprProtocol destroy INFO: Stopping Coyote AJP/1.3 on ajp-8009 Terminate batch job (Y/N)? y C:\apache-tomcat-6\bin>
如何解决它? 另一个tomcat没有运行,我用localhost:8080检查。 提前致谢
用netstat -ntlp | grep :8009
查看 netstat -ntlp | grep :8009
看看哪个进程正在使用8009。
先杀死进程。 然后检查你的%TOMCAT_HOME%/ conf / server.xml文件。 你应该用port =“8010”替换port =“8009 ” 。
通过运行ps -ef | grep tomcat
双重检查 如果有任何java进程正在运行来终止它, ps -ef | grep tomcat
kill -9
进程或从你的任务管理器。 很可能你以前的tomcat启动会话没有正常结束。
您的端口8009已被使用。 它可以是另一个tomcat或不同的东西。
你应该手动杀死任何tomcat进程。
编辑:假设你在Windows平台上,使用CTRL-ALT-Suppr杀死所有javaw.exe进程
检查文件server.xml
中的文件\apache-tomcat-6.0.32\conf
将提及port address
,如果是8080
,请尝试将其更改为8081
并启动服务器并调用localhost:8081
在server.xml
,它将如下所示:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />