Tomcat 7 startup.bat异常

时间:2014-03-01 07:09:43

标签: tomcat7

当我运行Tomcat 7的startup.bat文件时,我收到以下错误。

  

信息:初始化ProtocolHandler [“http-apr-8080”]   2014年3月1日下午12:18:22 org.apache.coyote.AbstractProtocol init   严重:无法初始化与ProtocolHandler相关的终点[“http-apr-8080”]   java.lang.Exception:套接字绑定失败:[730013]尝试以其访问权限禁止的方式访问套接字。
      在org.apache.tomcat.util.net.AprEndpoint.bind(AprEndpoint.java:430)       在org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:640)       在org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:434)       在org.apache.catalina.connector.Connector.initInternal(Connector.java:981)       在org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)       在org.apache.catalina.core.StandardService.initInternal(StandardService.java:559)       在org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)       在org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:814)       在org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)       在org.apache.catalina.startup.Catalina.load(Catalina.java:639)       在org.apache.catalina.startup.Catalina.load(Catalina.java:664)       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)       在org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:281)       在org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:455)
  2014年3月1日下午12:18:22 org.apache.catalina.core.StandardService initInternal   严重:无法初始化连接器[连接器[HTTP / 1.1-8080]]   org.apache.catalina.LifecycleException:无法初始化组件[Connector [HTTP / 1.1-8080]]       在org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:106)       在org.apache.catalina.core.StandardService.initInternal(StandardService.java:559)       在org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)       在org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:814)       在org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)       在org.apache.catalina.startup.Catalina.load(Catalina.java:639)       在org.apache.catalina.startup.Catalina.load(Catalina.java:664)       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)       在org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:281)       在org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:455)   引起:org.apache.catalina.LifecycleException:协议处理程序初始化失败       在org.apache.catalina.connector.Connector.initInternal(Connector.java:983)       在org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)       ......还有12个   引起:java.lang.Exception:套接字绑定失败:[730013]尝试以其访问权限禁止的方式访问套接字。
      在org.apache.tomcat.util.net.AprEndpoint.bind(AprEndpoint.java:430)       在org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:640)       在org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:434)       在org.apache.catalina.connector.Connector.initInternal(Connector.java:981)       ......还有13个

当我运行网址http://localhost:8080时,我会收到身份验证提示。如果我将默认用户名和密码设置为“tomcat”,则会在没有成功登录的情况下再次提示我 这是我的 tomcat-users.xml 文件

  <role rolename="tomcat"/>
  <role rolename="manager-gui"/>
  <user username="tomcat" password="tomcat" roles="tomcat,manager-gui"/>

有人能帮帮我吗?

5 个答案:

答案 0 :(得分:11)

您可能已在后台运行另一个Tomcat实例并使用端口8080.尝试使用shutdown.bat关闭它,或者在Windows任务管理器中查找java进程。如果你真的想确保没有其他实例在运行,你也可以重启。

答案 1 :(得分:7)

其他应用程序可能会使用端口8080。转到tomcat中的server.xml并更改端口号, 并重新启动tomcat。要更改端口跟随 http://www.mkyong.com/tomcat/how-to-change-tomcat-default-port/

答案 2 :(得分:3)

我有同样的问题,我跑了 netstat -ano&gt; output.txt的 在output.txt文件中,我看到带有PID 4的系统进程持有该8080端口。我无法以任何方式释放它,所以我重新启动了系统。之后很好。

答案 3 :(得分:0)

Failed to initialize end point associated with ProtocolHandler ["http-apr-8080"]这样的错误意味着Tomcat无法启动绑定到(使用)端口8080.

前几天我在80号港口有一个Failed to initialize end point associated with ProtocolHandler ["http-apr-80"]

尝试在8080(或发生此错误的任何端口)上与telnet连接,以确定使用此端口的进程。

  1. 打开telnet连接telnet localhost 8080(或您正在使用的任何主机和端口)
  2. 预计会看到一个闪烁光标的空白屏幕。如果您收到Could not open connection to the host或类似错误,那么就没有任何东西可以使用此端口。
  3. 键入GET之类的命令(假设HTTP协议)
  4. 查看服务器是否响应了HTTP响应,这可能会让我们了解为该端口提供服务的过程。

答案 4 :(得分:0)

您可能已在后台运行另一个Tomcat实例并使用端口8080.转到任务管理器并结束所有java * .exe进程。