我在eclipse上遇到问题,说端口已在使用中(80,8009),当我更改端口时,我收到一个错误:本地主机上的Tomcat v6无法启动。
当我调试Tomcat时,出现以下错误:
11-Mar-2011 21:11:40 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\jdk1.6.0_21\bin;.;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:/Program Files/Java/jre6/bin/client;C:/Program Files/Java/jre6/bin;C:/Program Files/Java/jre6/lib/i386;C:\Program Files\Java\jdk1.5.0_09\bin;C:\Program Files\QuickTime\QTSystem\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Program Files\apache-ant-1.8.1\bin;C:\Program Files\Subversion\bin;C:\Program Files\Java\jdk1.6.0_21\bin;C:\Users\Rajin\Desktop\eclipse-jee-helios-SR1-win32\eclipse; 11-Mar-2011 21:11:41 org.apache.tomcat.util.digester.SetPropertiesRule begin WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:EducationGamesApp' did not find a matching property. 11-Mar-2011 21:11:41 org.apache.coyote.http11.Http11Protocol init INFO: Initializing Coyote HTTP/1.1 on http-8080 11-Mar-2011 21:11:41 org.apache.catalina.startup.Catalina load INFO: Initialization processed in 635 ms 11-Mar-2011 21:11:41 org.apache.catalina.core.StandardService start INFO: Starting service Catalina 11-Mar-2011 21:11:41 org.apache.catalina.core.StandardEngine start INFO: Starting Servlet Engine: Apache Tomcat/6.0.29 11-Mar-2011 21:11:41 org.apache.coyote.http11.Http11Protocol start INFO: Starting Coyote HTTP/1.1 on http-8080 11-Mar-2011 21:11:41 org.apache.jk.common.ChannelSocket init INFO: JK: ajp13 listening on /0.0.0.0:8008 11-Mar-2011 21:11:41 org.apache.jk.server.JkMain start INFO: Jk running ID=0 time=0/29 config=null 11-Mar-2011 21:11:41 org.apache.catalina.startup.Catalina start INFO: Server startup in 390 ms 11-Mar-2011 21:11:41 org.apache.catalina.core.StandardServer await SEVERE: StandardServer.await: create[8005]: java.net.BindException: Address already in use: JVM_Bind at java.net.PlainSocketImpl.socketBind(Native Method) at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:365) at java.net.ServerSocket.bind(ServerSocket.java:319) at java.net.ServerSocket.<init>(ServerSocket.java:185) at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) at org.apache.catalina.startup.Catalina.await(Catalina.java:662) at org.apache.catalina.startup.Catalina.start(Catalina.java:614) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.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)
谢谢
通过运行找出哪个应用程序持有端口
netstat -no
netstat -anp
查找8005,8080,8009端口监听无论是127.0.0.1或0.0.0.0。在任务管理器(Windows)或ps(Linux)中查找PID(进程ID),找出它是哪个程序,终止该程序,然后尝试再次启动Tomcat。
8005
8080
8009
127.0.0.1
0.0.0.0
ps