我使用Vagrant部署到Ubuntu Linux并尝试启动tomcat8
服务。
Tomcat 8由apt-get install tomcat8
安装。
使用service tomcat8 start
命令时,出现以下错误:
tomcat8.service的作业失败。请参阅" systemctl status tomcat8.service"和" journalctl -xe"详情。
然后我跟踪systemctl status tomcat8.service
,发现:
? tomcat8.service - LSB:启动Tomcat。 已加载:已加载(/etc/init.d/tomcat8)
活跃:失败(结果:退出代码)自2016-03-28 09:44:17 GMT; 5年前 文件:man:systemd-sysv-generator(8)
进程:884 ExecStop = / etc / init.d / tomcat8 stop(code = exited,status = 0 / SUCCESS)
进程:1312 ExecStart = / etc / init.d / tomcat8 start(code = exited,status = 1 / FAILURE)
3月28日09:44:12 vagrant-ubuntu-trusty systemd [1]:启动LSB:启动Tomcat ....
3月28日09:44:12 vagrant-ubuntu-trusty tomcat8 [1312]:*启动Tomcat servlet引擎tomcat8
3月28日09:44:17 vagrant-ubuntu-trusty tomcat8 [1312]:...失败!
3月28日09:44:17 vagrant-ubuntu-trusty systemd [1]:tomcat8.service:控制进程退出,代码=退出状态= 1
3月28日09:44:17 vagrant-ubuntu-trusty systemd [1]:无法启动LSB:启动Tomcat ..
3月28日09:44:17 vagrant-ubuntu-trusty systemd [1]:单位tomcat8.service进入失败状态。
3月28日09:44:17 vagrant-ubuntu-trusty systemd [1]:tomcat8.service失败。
我不确定如何继续运行我的Tomcat 8服务。
答案 0 :(得分:2)
这可能与this bug有关。最新版本的Java不赞成使用已注册的目录,如果指定了一个则失败,但Tomcat8即使它不存在也指定一个。按照问题评论中的建议检查/var/log/tomcat8/
中的日志,看看这是否确实是问题的根源。如果是,您可以等待修复错误或尝试链接的错误报告中建议的更新的catalina.sh文件。
答案 1 :(得分:2)
验证您的tomcat8配置file in /etc/default/tomcat8
。看看是否存在配置错误的变量。
对于我来说,此错误是由我的配置文件中的以下变量引起的:
-Djava.awt.headless=true -XX:+UseConcMarkSweepGC
JAVA_OPTS="-Djava.awt.headless=true -Xss4m -Xmx2g -XX:+UseConcMarkSweepGC"
我评论了并且奏效了。
答案 2 :(得分:1)
我为解决该问题所做的事情:
进程:1312 ExecStart = / etc / init.d / tomcat8启动(代码=已退出,状态= 1 /失败)
查看tomcat的依赖项
dpkg -s tomcat8-common|grep Depends
和系统Java版本
javar -version
如果内容不匹配,请尝试使用适当的Java版本进行分类。
如果不是这种情况,请继续:
从一开始就很不错
sudo apt-get update
检查最终运行的tomcat进程
ps aux | grep java
测试您要杀死的PID
pgrep -f tomcat
目标操作
sudo pkill -f tomcat
通过键入sudo apt-get remove tomcat8-
标签开始删除。
您可能会发现:
tomcat8-常见的tomcat8-用户
用完成删除(我不知道下面哪个最适合运行)
sudo apt-get purge tomcat8
或
sudo apt-get --auto-remove purge tomcat8
或只是
sudo apt-get remove tomcat8
您也可以
sudo apt-get autoremove
小心地sudo rm -r
个文件夹
重新启动
sudo systemctl reboot
重新安装时
sudo apt-get install tomcat8
检查进展情况
sudo systemctl status tomcat8.service
sudo /usr/share/tomcat8/bin/version.sh
更好吗?
答案 3 :(得分:1)
当tomcat8服务器在用户tomcat8下运行并且catalina.out由root创建时,可能导致此问题。
要解决此问题,请删除catalina.out并让tomcat8重新创建它。
答案 4 :(得分:-1)
文件夹tomcat8/conf
下文件的文件许可问题
并确保所有者为tomcat8
。