tomcat版本为6.0,JDK版本为6.0,tomcat启动到一半就跳没了,我看了一下8080端口没有被其他进程占用,在server.xml中把端口该成其他的也是一样启动不了,在TOMCAT日志有如下提示:2009-1-4 16:58:48 org.apache.catalina.core.AprLifecycleListener init
信息: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Tomcat 6.0\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\j2sdk1.4.2_17\bin;C:\PROGRA~1\IBM\SQLLIB\BIN;C:\PROGRA~1\IBM\SQLLIB\FUNCTION;C:\PROGRA~1\IBM\SQLLIB\SAMPLES\REPL
2009-1-4 16:58:48 org.apache.coyote.http11.Http11Protocol init
信息: Initializing Coyote HTTP/1.1 on http-8088
2009-1-4 16:58:48 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 530 ms
2009-1-4 16:58:48 org.apache.catalina.core.StandardService start
信息: Starting service Catalina
2009-1-4 16:58:48 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/6.0.16
2009-1-4 16:58:49 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8088
2009-1-4 16:58:49 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2009-1-4 16:58:49 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/15  config=null
2009-1-4 16:58:49 org.apache.catalina.startup.Catalina start
信息: Server startup in 516 ms
2009-1-4 16:58:49 org.apache.catalina.core.StandardServer await
严重: 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(Unknown Source)
at java.net.ServerSocket.bind(Unknown Source)
at java.net.ServerSocket.<init>(Unknown Source)
at org.apache.catalina.core.StandardServer.await(StandardServer.java:373)
at org.apache.catalina.startup.Catalina.await(Catalina.java:642)
at org.apache.catalina.startup.Catalina.start(Catalina.java:602)
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)
2009-1-4 16:58:49 org.apache.coyote.http11.Http11Protocol pause
信息: Pausing Coyote HTTP/1.1 on http-8088
2009-1-4 16:58:50 org.apache.catalina.core.StandardService stop
信息: Stopping service Catalina
2009-1-4 16:58:50 org.apache.coyote.http11.Http11Protocol destroy
信息: Stopping Coyote HTTP/1.1 on http-8088
我是新手,请高手帮帮忙,谢谢

解决方案 »

  1.   

    你现在用的端口是8088..
    信息: Initializing Coyote HTTP/1.1 on http-8088 请确认。
      

  2.   

    no,端口还是被占用了,不一定就是,如果你用的是eclipse来启动tomcat的话,在restart时,很有可能原来的tomcat实例没有完全释放。你可以在eclipse中先stop掉tomcat(看console的信息,要确定tomcat关掉了),然后再重新启动tomcat。或者,干脆重启eclipse也行。
      

  3.   

    我开始以为是端口被占用,把server.xml中端口改成8088,如果用8080也是一样的 
      

  4.   

    我没有启动eclipse,tomcat装好了就启动不了
      

  5.   

    你的日志显示的就是address has already in use,还是仔细检查一下有什么进程占用了你当前tomcat配置所用的端口。可以在dos下运行netstat -a -o查看。
      

  6.   

    谢谢,问题是解决了,有一个javaw.exe的进程占用了8005这个端口,我把这个进程结束就可以启动了。开始只知道查看8080这个端口,没想到是其他的端口被占用