Tomcat无法启动(抛出java.net.BindException :) [英] Tomcat not starting (throwing java.net.BindException: )

查看:2168
本文介绍了Tomcat无法启动(抛出java.net.BindException :)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经完成了以下设置来运行Java Web项目但不知何故我的Tomcat不是从Eclipse开始的:

  JAVA_HOME :C:\Program Files\Java\jdk1.6.0_03 
PATH:C:\Program Files\Java\jdk1.6.0_03\bin
CATALINA_HOME:D:\ javaworkspaces \apache-tomcat-7.0.27

然后根据需要设置新服务器来自Eclipse并提供Tomcat安装路径。



正如在某些论坛中所建议的那样,我已将 tomcat-juli.jar 添加到类路径中。

尽管如此,当我尝试启动Tomcat服务器时,我得到错误,因为tomcat在45秒内没有凝视。



我得到以下日志消息:

  2012年7月26日下午5:49:34 org.apache.catalina.core.AprLifecycleListener init 
信息:在java.library.path中找不到基于APR的Apache Tomcat Native库,它允许在生产环境中获得最佳性能:C:\Program Files \ Java \ _jre6 \ bin; C:\ Windows \ Sun\Java \bin; C:\ Windows \ system32; C:\ Windows; C:/ Program Files / Java / jre7 / bin / client; C:/ Program Files / Java / jre7 / bin; C :/ Program Files / Java / jre7 / lib / i386; C:\ Windows\system32; C:\ Windows; C:\ Windows \ System32 \ Wbem; C:\ Windows \ system32 \ WindowsPowerShell \v1.0 \; C:\Program Files \ TortoiseSVN \ bin; C:\\计划Files\Java\jdk1.6.0_03\bin; d:\eclipse-JEE的靛蓝SR2-win32\eclipse ;;。
Jul 26,2012 5:49:34 PM org.apache.tomcat.util.digester.SetPropertiesRule
begin
警告:[SetPropertiesRule] {Server / Service / Engine / Host / Context}将属性'source'设置为'org.eclipse.jst.j2ee.server:JEE_Day01'没有找到匹配的属性。
Jul 26,2012 5:49:34 PM org.apache.coyote.AbstractProtocol init
INFO:Initializing ProtocolHandler [http-bio-80]
Jul 26,2012 5:49 :35 PM org.apache.coyote.AbstractProtocol init
INFO:初始化ProtocolHandler [ajp-bio-8009]
Jul 26,2012 5:49:35 PM org.apache.coyote.AbstractProtocol init
严重:无法初始化与ProtocolHandler相关的终点[ajp-bio-8009]
java.net.BindException:地址已在使用中:JVM_Bind< null>:8009
at org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:393)
at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:566)
at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:417)
at org.apache.catalina.connector.Connector.initInternal(Connector.java:956)
at org.apache.catalina。 util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core.StandardService.initInternal(StandardService.java:559)
at org.apa che.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:814)
at org.apache.catalina。 util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.startup.Catalina.load(Catalina.java:624)
at org.apache.catalina.startup.Catalina。 load(Catalina.java:649)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl .invoke(未知来源)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:281)
org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:449)
引起:java.net.BindException:已在使用的地址:java.net.PlainSocketImpl中的JVM_Bind
。 socketBind(本机方法)
at java.net.PlainSocketImpl.bind(Unknown Source)
at java.net.ServerSocket.bind(Unknown So urce)
at java.net.ServerSocket。< init>(未知来源)
at java.net.ServerSocket。< init>(未知来源)
at org.apache.tomcat .util.net.DefaultServerSocketFactory.createSocket(DefaultServerSocketFactory.java:49)
at org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:380)
... 16更多
Jul 26,2012 5:49:35 PM org.apache.catalina.core.StandardService initInternal
SEVERE:无法初始化连接器[Connector [AJP / 1.3-8009]]
org.apache .catalina.LifecycleException:无法在org.apache初始化组件[Connector [AJP / 1.3-8009]]
org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:106)
at org.apache .catalina.core.StandardService.initInternal(StandardService.java:559)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core .StandardServer.initInternal(StandardServer.java:814)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:10 2)
at org.apache.catalina.startup.Catalina.load(Catalina.java:624)
at org.apache.catalina.startup.Catalina.load(Catalina.java:649)
at sun.reflect.NativeMethodAccessorImpl.invoke0(原生方法)
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.load(Bootstrap.java:281)
at org.apache.catalina.startup。 Bootstrap.main(Bootstrap.java:449)
引起:org.apache.catalina.LifecycleException:协议处理程序初始化失败
at org.apache.catalina.connector.Connector.initInternal(Connector.java: 958)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
... 12更多

我已经提到了多个论坛,但我对此情况严重不满。请指导我。

解决方案

这些行:

 严重:无法初始化与ProtocolHandler关联的终点[ajp-bio-8009] 
java.net.BindException:地址已在使用中:JVM_Bind< null>:8009

意味着端口8009上已经有服务正在运行。是否已经运行了tomcat(带有ajp)? / p>

如果需要在8009上运行的服务,您可以将server.xml中的连接器配置更改为如下所示:

 < Connector port =8089protocol =AJP / 1.3redirectPort =8443/> 


I have done the following settings to run a Java web project but somehow my Tomcat is not starting from Eclipse:

JAVA_HOME : C:\Program Files\Java\jdk1.6.0_03  
PATH : C:\Program Files\Java\jdk1.6.0_03\bin  
CATALINA_HOME : D:\javaworkspaces\apache-tomcat-7.0.27  

Then as is required, I set up a new server from Eclipse and give the Tomcat installation path.

As advised in some forums, I have added tomcat-juli.jar to the class path.
In spite of all this when I try starting the Tomcat Server, I get the the error as tomcat not staring in 45 sec.

I get the following log message:

Jul 26, 2012 5:49:34 PM 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\jre6\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:/Program Files/Java/jre7/bin/client;C:/Program Files/Java/jre7/bin;C:/Program Files/Java/jre7/lib/i386;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Java\jdk1.6.0_03\bin;D:\eclipse-jee-indigo-SR2-win32\eclipse;;.  
Jul 26, 2012 5:49:34 PM org.apache.tomcat.util.digester.SetPropertiesRule   
 begin
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property         'source' to 'org.eclipse.jst.j2ee.server:JEE_Day01' did not find a matching property.  
Jul 26, 2012 5:49:34 PM org.apache.coyote.AbstractProtocol init  
INFO: Initializing ProtocolHandler ["http-bio-80"]  
Jul 26, 2012 5:49:35 PM org.apache.coyote.AbstractProtocol init  
INFO: Initializing ProtocolHandler ["ajp-bio-8009"]  
Jul 26, 2012 5:49:35 PM org.apache.coyote.AbstractProtocol init  
SEVERE: Failed to initialize end point associated with ProtocolHandler ["ajp-bio-8009"]  
java.net.BindException: Address already in use: JVM_Bind <null>:8009  
at org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:393)
at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:566)
at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:417)
at org.apache.catalina.connector.Connector.initInternal(Connector.java:956)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core.StandardService.initInternal(StandardService.java:559)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:814)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.startup.Catalina.load(Catalina.java:624)
at org.apache.catalina.startup.Catalina.load(Catalina.java:649)
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.load(Bootstrap.java:281)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:449)  
Caused by: 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 java.net.ServerSocket.<init>(Unknown Source)
at org.apache.tomcat.util.net.DefaultServerSocketFactory.createSocket(DefaultServerSocketFactory.java:49)
at org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:380)
... 16 more  
Jul 26, 2012 5:49:35 PM org.apache.catalina.core.StandardService initInternal    
    SEVERE: Failed to initialize connector [Connector[AJP/1.3-8009]]
org.apache.catalina.LifecycleException: Failed to initialize component [Connector[AJP/1.3-8009]]  
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:106)  
    at org.apache.catalina.core.StandardService.initInternal(StandardService.java:559)  
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:814)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.startup.Catalina.load(Catalina.java:624)
at org.apache.catalina.startup.Catalina.load(Catalina.java:649)
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.load(Bootstrap.java:281)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:449)  
Caused by: org.apache.catalina.LifecycleException: Protocol handler initialization failed
at org.apache.catalina.connector.Connector.initInternal(Connector.java:958)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
... 12 more

I have referred multiple forums but am badly stuck with the situation. Please guide me.

解决方案

these lines :

SEVERE: Failed to initialize end point associated with ProtocolHandler ["ajp-bio-8009"]
java.net.BindException: Address already in use: JVM_Bind <null>:8009  

imply that there is already a service running on port 8009. is there a tomcat (with ajp) running already?

if the service running on 8009 is needed you could change the connector configuration in server.xml to something like below :

<Connector port="8089" protocol="AJP/1.3" redirectPort="8443" />

这篇关于Tomcat无法启动(抛出java.net.BindException :)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆