无法在Ubuntu 12.04中启动Tomcat

时间:2015-02-05 08:46:15

标签: tomcat ubuntu tomcat7

我使用sudo apt-get install tomcat7安装了tomcat,当我尝试使用sudo /usr/share/tomcat7/bin/startup.sh启动tomcat服务器时出现以下错误

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 touch: cannot touch '/usr/share/tomcat7/logs/catalina.out': No such file or directory /usr/share/tomcat7/bin/catalina.sh: 389: /usr/share/tomcat7/bin/catalina.sh: cannot create /usr/share/tomcat7/logs/catalina.out: Directory nonexistent。我遇到了类似的问题How to fix 'Failed to initialize end point associated with ProtocolHandler' error?,但解决方案说我要重新安装我不想做的tomcat。需要帮助

3 个答案:

答案 0 :(得分:0)

您需要使用service tomcat start/etc/init.d/tomcat start将其作为服务启动。

答案 1 :(得分:0)

首先,您需要设置$JAVA_HOME,以便tomcat中的$JRE_HOME指向正确的Java路径。

如果你没有安装hava Java,那么从Ubuntu软件中心安装最新版本的Java

然后,在终端类型

sudo gedit ~/.bashrc

这将打开.bashrc文件。最后,添加

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64

您应该检查/usr/lib/jvm

中的确切文件夹名称

在终端类型

中启动tomcat7

sudo service tomcat7 start

并停止输入

sudo service tomcat7 stop

当您输入sudo /usr/share/tomcat7/bin/startup.sh时,您应该看到

Using JRE_HOME: /usr/lib/jvm/java-7-openjdk-amd64

答案 2 :(得分:0)

我正在解决在Ubuntu中设置tomcat 8的类似问题。虽然我能够手动开始使用如下的超级用户脚本,但它无法解决我收到的错误。

sudo service tomcat8 start

我可以告诉你,在我的情况下/ usr / share / tomcat7 / logs /文件夹不存在。 看看你正在运行的脚本并检查你的路径。

我正在运行startup.sh并意识到我的路径不正确。我打开了位于CATALINA_HOME目录中的startup.sh的脚本。查找失败的行:错误:触摸:无法触摸'/usr/share/tomcat8/logs/catalina.out'。 看到我们正在执行catalina.sh。

# Guilty Line in this case
EXECUTABLE=catalina.sh

由于该行引用了catalina.sh脚本,我试图找到该脚本中的错误。位于CATALINA_HOME目录中的catalina.sh。如果你在评论中读到这些都是默认设置。

#   CATALINA_OUT    (Optional) Full path to a file where stdout and stderr
#                   will be redirected.
#                   Default is $CATALINA_BASE/logs/catalina.out

我发现有罪并且更新了路径以匹配我的实际文件夹路径,将“日志”更改为“日志”。

if [ -z "$CATALINA_OUT" ] ; then
   CATALINA_OUT="$CATALINA_BASE"/log/catalina.out
fi

完成此更新后,我再次运行脚本:

touch: cannot touch '/usr/share/tomcat8/log/catalina.out': Permission denied
/usr/share/tomcat8/bin/catalina.sh: 402:         
/usr/share/tomcat8/bin/catalina.sh: cannot create     
/usr/share/tomcat8/log/catalina.out: Permission denied

这次我不得不处理文件夹的权限。确保哪个用户调用您的脚本具有权限。