My JDK is jdk1.5.0_09 and my tomcat is 5.5.17,and I use Norton Antivirus 2006,when I start Tomcat,it raise following error:
Error: Error initializing endpoint java.net.BindException: Address already in use: JVM_Bind:8888 at org.apache.tomcat.util.net.PoolTcpEndpoint.initEndpoint( PoolTcpEndpoint.java:264) at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:137) at org.apache.coyote.tomcat5.CoyoteConnector.initialize( CoyoteConnector.java:1429) at org.apache.catalina.core.StandardService.initialize(StandardService.java :609) at org.apache.catalina.core.StandardServer.initialize(StandardServer.java :2384) at org.apache.catalina.startup.Catalina.load(Catalina.java:507) at org.apache.catalina.startup.Catalina.load(Catalina.java:528) 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:324) at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:250) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:424) I guess this port 8888 has been used,so I use command to look up,like follows: C:\>netstat -an 8888 Proto Local Address Foreign Address State TCP 192.168.131.63:8888 0.0.0.0:0 LISTENING I don't know which program has used this port,how to find this program and kill it? I attemp to change tomcat port from 8888 to 9090,for several times,tomcat can start and run well,but then I find a puzzle question for tomcat run some times,after I modify tomcat,I restart tomcat again,I find tomcat raise error, java.net.BindException: Address already in use: JVM_Bind:9090,even I restart my computer,it still raise above error! I puzzled it for several times! This error will solved until I change tomcat port again! I don't know the reason! I don't know if this is a bug of JDK or Tomcat? Anyone can give me some advice? Any idea will be appreciated! Thanks.