Tomcat无法启动。

13

出于某种原因,Tomcat服务器突然无法运行/启动/停止。

当我运行启动命令时,下面是我得到的结果:

  C:\Program Files\jasperserver-3.5.0\apache-tomcat\bin>startup
Using CATALINA_BASE:   C:\Program Files\jasperserver-3.5.0\apache-tomcat
Using CATALINA_HOME:   C:\Program Files\jasperserver-3.5.0\apache-tomcat
Using CATALINA_TMPDIR: C:\Program Files\jasperserver-3.5.0\apache-tomcat\temp
Using JRE_HOME:        C:\PROGRA~1\JASPER~1.0\java\jre

Tomcat 窗口只是一闪而过,然后消失。

(我在 C:\Program Files 下安装了另一个 Java 实例)

求助!!!

更新:

catalina 文件日志

Mar 22, 2011 3:41:50 AM org.apache.coyote.http11.Http11BaseProtocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
Mar 22, 2011 3:41:50 AM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 1017 ms
Mar 22, 2011 3:41:51 AM org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
Mar 22, 2011 3:41:51 AM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/5.5.20
Mar 22, 2011 3:41:51 AM org.apache.catalina.core.StandardHost start
INFO: XML validation disabled
Mar 22, 2011 3:42:06 AM org.apache.coyote.http11.Http11BaseProtocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
Mar 22, 2011 3:42:06 AM org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
Mar 22, 2011 3:42:06 AM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/43  config=null
Mar 22, 2011 3:42:06 AM org.apache.catalina.storeconfig.StoreLoader load
INFO: Find registry server-registry.xml at classpath resource
Mar 22, 2011 3:42:06 AM org.apache.catalina.startup.Catalina start
INFO: Server startup in 15374 ms

1
你有任何日志吗?你可能会在loglogs子目录中找到它们。那里有任何错误信息吗? - Grzegorz Oledzki
1
我的猜测是你的服务器实际上正在运行,请尝试访问 localhost:8080。可能由于某些原因,Tomcat控制台没有出现在屏幕上,但服务器完全正常。 - Tomasz Nurkiewicz
这似乎是这样的...但我尝试运行localhost:8080,它没有运行。 - tecman
1
这个有用的问题已经被浏览了大约14k次... - Stefan
请@tecman,如果您自己找到了解决方案,请在此问题下回答并接受答案。这将有助于所有需要寻找解决方案的人。我写这篇文章是因为我看到了您在ykaganovich的答案中关于如何解决它的评论。谢谢。 - A.Alessio
11个回答

27

使用catalina.bat run代替startup.bat。这样,窗口就不会消失,您可以看到正在发生的事情。


它也没有帮助……最后卸载了Jasperserver、Java并重新安装Jasperserver……现在它运行良好了。 - tecman

5

谢谢 - 我也遇到了同样的问题,你的评论为我节省了很多时间。 - Faustas

3

我遇到了类似的问题。我打开命令提示符并进入tomcat\bin\startup.bat目录。问题是我的JRE_HOME没有在环境变量中定义。我添加了该路径,然后它就可以工作了。


2
我有同样的问题,我是这样解决的:
首先,按照@ykaganovich的建议,我尝试使用catalina.bat start命令启动服务器;虽然它没有解决问题,但至少它显示了一个指定错误的日志,这真的很有帮助。
在我的情况下,日志说问题是由于Java版本引起的。我把JAVA_HOME变量从JDK7改为指向JDK8,然后再次执行catalina.bat start命令,它完美地工作并启动了服务器。我希望我的建议对某些人有帮助。

1
在Eclipse中添加Tomcat并从那里启动它。将Tomcat配置为“使用Tomcat安装”,它就会工作。

1

我曾经遇到过与Apache Tomcat 9版本相关的问题。

解决方案非常简单。

Apache Tomcat 9支持Java 8及更高版本。 因此,我将JRE_HOME绑定到新的JRE8,而不是原来的JRE7路径,一切正常。

不同版本的Apache Tomcat适用于不同版本的Servlet和JSP规范。规范与相应的Apache Tomcat版本之间的映射如下:

enter image description here

希望这对你们有用,干杯!

请分享您进行屏幕截图的链接。 - Mirko Cianfarani

1

这是一个非常奇怪的问题,因为在日志中你可以看到服务器已经启动了,所以尝试以下方法:

  • 重新启动电脑 :) - 对于奇怪的情况来说,这是最好的解决方案
  • 更改Tomcat端口
  • 关闭所有不必要的应用程序:Skype、IP电话等(我曾经遇到过类似的问题,应用程序IP电话“轻轻地”阻塞了这个端口(“轻轻地”-在Tomcat日志中一切正常,但实际上Web应用程序无法工作)

1
谢谢……最终卸载了Jasperserver、Java并重新安装了Jasperserver……现在它运行得很好。 - tecman
很好 :) 所以你可能修改了一些重要的文件。 - lukastymo

0

以上的解决方案都对我没用。

我通过删除当前的Tomcat并替换为新的,然后重新设置我的工作空间来找到了出路。

希望这能帮助到某些人。


0
如果Tomcat之前正常工作,但突然出现无法启动的情况,那是因为其他进程已经开始使用了你原本用来运行Tomcat的端口。在我的情况下,我关闭了Tomcat并试图直接从Eclipse中运行我的servlet。所以Eclipse控制了该端口。在我关闭Eclipse并尝试重新启动Tomcat(使用startup.bat)后,一切都正常了。
ykaganovich的答案帮助我找到了我的问题。

0
打开Tomcat用户文件(tomcat-users.xml),检查您是否已经关闭了所有引号。这就是我解决问题的方法。
现在再次检查角色名称:
<tomcat-users>
<role rolename="admin" />
<role rolename="manager" />
<user username="admin" password="secret" roles="admin,manager" />
</tomcat-users>

最后,在 bin 文件夹中执行 startup.bat 文件


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接