Catalina配置测试(catalina.sh configtest)

时间:2016-06-30 23:53:18

标签: java tomcat web-applications catalina

我觉得我的Tomcat安装可能有问题,所以我运行以下命令进行健全检查。

$TOMCAT_HOME/bin/catalina.sh configtest

这个输出意味着什么,或者如何修复?想重新安装Tomcat。操作系统是Ubuntu。

Using CATALINA_BASE:   /usr/share/tomcat7
Using CATALINA_HOME:   /usr/share/tomcat7
Using CATALINA_TMPDIR: /usr/share/tomcat7/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/share/tomcat7/bin/bootstrap.jar:/usr/share/tomcat7/bin/tomcat-juli.jar
Jul 01, 2016 12:28:41 AM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/common/classes], exists: [false], isDirectory: [false], canRead: [false]
Jul 01, 2016 12:28:41 AM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/common], exists: [false], isDirectory: [false], canRead: [false]
Jul 01, 2016 12:28:41 AM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/server/classes], exists: [false], isDirectory: [false], canRead: [false]
Jul 01, 2016 12:28:41 AM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/server], exists: [false], isDirectory: [false], canRead: [false]
Jul 01, 2016 12:28:41 AM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/shared/classes], exists: [false], isDirectory: [false], canRead: [false]
Jul 01, 2016 12:28:41 AM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/shared], exists: [false], isDirectory: [false], canRead: [false]
Jul 01, 2016 12:28:41 AM org.apache.catalina.startup.Catalina initDirs
SEVERE: Cannot find specified temporary folder at /usr/share/tomcat7/temp
Jul 01, 2016 12:28:41 AM org.apache.catalina.startup.Catalina load
WARNING: Unable to load server configuration from [/usr/share/tomcat7/conf/server.xml]
Configuration error detected!

3 个答案:

答案 0 :(得分:1)

我遇到了同样的问题。我在 Ubuntu 14.04 上运行 Tomcat 7 。问题出在文件catalina.properties中。在我的计算机中,它位于/ var / lib / tomcat7 / conf /.

此文件包含很多路径,包含变量 $ {catalina.base} $ {catalina.home} 。此变量在文件catalina.sh中设置。在我的电脑中,它位于/ usr / share / tomcat7 / bin /.

出于某种原因,Tomcat 7使用 $ {catalina.home} ,而不是 $ {catalina。 / usr / share / tomcat7 / 。 base} 这是 / var / lib / tomcat7 /

要纠正此问题,您需要替换以下文字:

  • $ {catalina.home} / common / classes => $ {catalina.base} /普通/类
  • $ {catalina.home} / common / .jar => $ {catalina.base} /普通/ 的.jar
  • $ {catalina.home} / server / classes => $ {catalina.base} /服务器/类
  • $ {catalina.home} / server / .jar => $ {catalina.base} /服务器/ 的.jar
  • $ {catalina.home} / shared / classes => $ {catalina.base} /共享/类
  • $ {catalina.home} / shared / .jar => $ {catalina.base} /共享/ 的.jar

替换后,再次运行configtest.sh进行验证。

答案 1 :(得分:0)

您可以在tomcat的bin文件夹中修改或添加setenv.sh文件,如下所示

export JAVA_HOME="[your java home]"
export CATALINA_BASE="[your tomcat home]"
export CATALINA_HOME=" [ your tomcat home]"
export CATALINA_PID="$CATALINA_BASE/logs/tomcat.pid"

这个修复工作对我来说。

答案 2 :(得分:0)

在将Ubuntu 16.04盒子升级到18.04之后,我遇到了这个问题。作为升级的一部分,我将Tomcat 8设置合并到了现有的Tomcat 7文件中,却忘记删除了这两行:

<!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
<Listener className="org.apache.catalina.core.JasperListener" />

只有最后一个实际上是引起问题的原因,但是如果您拖拽它,您可能也希望删除相关评论。

进行更改后,我能够在新升级的盒子上启动Tomcat 8,没有问题。