我觉得我的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!
答案 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 / 。
要纠正此问题,您需要替换以下文字:
替换后,再次运行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,没有问题。