【问题标题】:tomcat7.service failed to starttomcat7.service 启动失败
【发布时间】:2016-12-20 11:31:17
【问题描述】:

我有一个运行 tomcat7 的服务器,当我尝试重新启动 tomcat7 服务时它说:

Job for tomcat7.service failed because the control process exited with error code. See "systemctl status tomcat7.service" and "journalctl -xe" for details.

当我检查我的 systemctl status tomcat7.service 时,它​​给了我:

    tomcat7.service - LSB: Start Tomcat.
   Loaded: loaded (/etc/init.d/tomcat7; bad; vendor preset: enabled)
   Active: failed (Result: exit-code) since Tue 2016-12-20 11:19:29 UTC; 5min ago
     Docs: man:systemd-sysv-generator(8)
  Process: 5223 ExecStart=/etc/init.d/tomcat7 start (code=exited, status=1/FAILURE)

Dec 20 11:19:24 padrum systemd[1]: Starting LSB: Start Tomcat....
Dec 20 11:19:24 padrum tomcat7[5223]:  * Starting Tomcat servlet engine tomcat7
Dec 20 11:19:29 padrum tomcat7[5223]:    ...fail!
Dec 20 11:19:29 padrum systemd[1]: tomcat7.service: Control process exited, code=exited status=1
Dec 20 11:19:29 padrum systemd[1]: Failed to start LSB: Start Tomcat..
Dec 20 11:19:29 padrum systemd[1]: tomcat7.service: Unit entered failed state.
Dec 20 11:19:29 padrum systemd[1]: tomcat7.service: Failed with result 'exit-code'.

我尝试使用 dpkg -P 和 apt-get remove 卸载它。每次我尝试重新安装它都会给我一个错误,我无法运行我的 tomcat7。

有什么想法吗? 提前致谢

【问题讨论】:

  • try run printenv check 'CATALINA_BASE CATALINA_HOME` 如果你能检查 tomcat 日志 /var/log/tomcat7/catalina.out 也很好,因为现在很难说出了什么问题。
  • 错误我现在有:java.lang.ClassLoader 的 java.net.URLClassLoader.findClass(URLClassLoader.java:381) 的 java.lang.ClassNotFoundException: org.apache.catalina.startup.Catalina。 loadClass(ClassLoader.java:424) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at org.apache.catalina.startup.Bootstrap.init(Bootstrap.java:210) at org.apache.catalina.startup .Bootstrap.main(Bootstrap.java:398)
  • 检查 'catalina.sh' 设置了什么 JRE_HOMEJAVA_HOME 可能路径不正确。
  • 问题解决了吗?

标签: tomcat server ubuntu-16.04


【解决方案1】:

我有一个类似的问题,原来/usr/share/tomcat/tomcat8/bin 中的setenv.sh 文件有一行指向JAVA_HOME。我通过在该行之前添加 # 并重新启动 tomcat 来评论这一点。成功了!

【讨论】:

    【解决方案2】:

    如果您使用 root 权限或其他一些权限将 catalina.out 等写入日志目录以使 tomcat 无法覆盖它,也会发生这种情况。

    【讨论】:

      【解决方案3】:

      我在 setenv.sh(在 /usr/share/tomcat8/bin 中)使用这一行时遇到了这个错误:

      #export CATALINA_OPTS=”$CATALINA_OPTS -server -Xms600m -Xmx1200m”
      export CATALINA_OPTS="$CATALINA_OPTS -server -Xms600m -Xmx1200m"
      

      已使用第二行修复,您可以看到错误是使用 ” char 而不是“ char (因为这是从网页以这种方式复制的)

      【讨论】:

        【解决方案4】:

        我们遇到了类似的问题。无论我们做什么,tomcat7 都不会从启动脚本启动。但是如果我们直接从命令行运行启动脚本中的命令,它会加载到内存中就好了。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2023-03-03
          • 2012-12-15
          • 1970-01-01
          • 2013-12-10
          • 1970-01-01
          • 2019-08-20
          • 1970-01-01
          相关资源
          最近更新 更多