Ich verwende Vagrant für die Bereitstellung auf Ubuntu Linux und versuche, einen Tomcat8
-Dienst zu starten.
Tomcat 8 wurde von apt-get install Tomcat8
installiert.
Bei Verwendung des Befehls service Tomcat8 start
wurde der folgende Fehler angezeigt:
Job für Tomcat8.service ist fehlgeschlagen. Weitere Informationen finden Sie unter "systemctl status Tomcat8.service" und "journalctl -xe".
Dann habe ich den systemctl status Tomcat8.service
verfolgt und festgestellt:
? Tomcat8.service - LSB: Starten Sie Tomcat . Geladen: geladen (/etc/init.d/Tomcat8)
Aktiv: fehlgeschlagen (Ergebnis: Exit-Code) seit Mo 2016-03-28 09:44:17 GMT; Vor 5s
Docs: man: systemd-sysv-generator (8)
Prozess: 884 ExecStop =/etc/init.d/Tomcat8 stop (Code = beendet, Status = 0/ERFOLG)
Prozess: 1312 ExecStart =/etc/init.d/Tomcat8 Start (Code = beendet, Status = 1/FAILURE)
28. März 09:44:12 vagrant-ubuntu-trusty systemd [1]: LSB starten: Starten Sie Tomcat ....
28. März 09:44:12 vagrant-ubuntu-trusty Tomcat8 [1312]: * Starten des Tomcat-Servlet-Motors Tomcat8
28. März 09:44:17 vagrant-ubuntu-trusty Tomcat8 [1312]: ... scheitern!
28. März 09:44:17 vagrant-ubuntu-trusty systemd [1]: Tomcat8.service: Steuerungsprozess wurde beendet, Code = Status beendet = 1
28. März 09:44:17 vagrant-ubuntu-trusty systemd [1]: LSB konnte nicht gestartet werden: Starten Sie Tomcat ..
28. März 09:44:17 vagrant-ubuntu-trusty systemd [1]: Einheit Tomcat8.service trat in den Status "fehlgeschlagen" ein.
28. März 09:44:17 vagrant-ubuntu-trusty systemd [1]: Tomcat8.service ist fehlgeschlagen.
Ich bin nicht sicher, wie ich den Tomcat 8-Dienst ausführen soll.
Dies könnte sich auf diesen Fehler beziehen. Aktuelle Versionen von Java lehnen die Verwendung von bestätigten Verzeichnissen ab und schlagen fehl, wenn eines angegeben wird. Tomcat8 gibt jedoch eines an, selbst wenn es nicht vorhanden ist. Überprüfen Sie das Protokoll in /var/log/Tomcat8/
wie in den Kommentaren zu Ihrer Frage vorgeschlagen, um zu sehen, ob dies tatsächlich die Ursache Ihres Problems ist. Wenn dies der Fall ist, können Sie entweder warten, bis der Fehler behoben ist, oder es mit der aktualisierten Datei catalina.sh versuchen, die im verknüpften Fehlerbericht vorgeschlagen wird.
Überprüfen Sie Ihre Tomcat8-Konfiguration file in /etc/default/Tomcat8
. Überprüfen Sie, ob schlecht konfigurierte Variablen vorhanden sind.
Für mich wurde dieser Fehler durch die folgenden Variablen in meiner Konfigurationsdatei verursacht:
-Djava.awt.headless=true -XX:+UseConcMarkSweepGC
Java_OPTS="-Djava.awt.headless=true -Xss4m -Xmx2g -XX:+UseConcMarkSweepGC"
Ich kommentierte und es hat funktioniert.
Was ich getan habe, um das Problem zu lösen:
Prozess: 1312 ExecStart =/etc/init.d/Tomcat8 start (Code = beendet, Status = 1/FAILURE)
Siehe Tomcats Abhängigkeitendpkg -s Tomcat8-common|grep Depends
und die System Java Versionjavar -version
Und versuchen Sie, die Dinge mit der entsprechenden Java-Version auszusortieren, wenn die Dinge nicht übereinstimmen.
Wenn dies nicht der Fall ist, fahren Sie fort:
Niemals schlecht zu BeginnSudo apt-get update
Überprüfen Sie, ob eventuell Tomcat-Prozesse ausgeführt werdenps aux | grep Java
Testen Sie die PID, die Sie töten werdenpgrep -f Tomcat
Gezielte AktionSudo pkill -f Tomcat
Beginnen Sie mit dem Entfernen, indem Sie Sudo apt-get remove Tomcat8-
eingeben.tab.
Möglicherweise finden Sie:
Tomcat8-common Tomcat8-Benutzer
Vollständiges Entfernen mit (Ich weiß nicht, welches der folgenden Verfahren am besten geeignet ist) Sudo apt-get purge Tomcat8
oderSudo apt-get --auto-remove purge Tomcat8
oder einfachSudo apt-get remove Tomcat8
Du kannst auchSudo apt-get autoremove
Vorsichtig Sudo rm -r
Ordner mögen
Starten Sie neuSudo systemctl reboot
Bei der Installation wieder auf der StreckeSudo apt-get install Tomcat8
Überprüfen Sie, wie es gehtSudo systemctl status Tomcat8.service
Sudo /usr/share/Tomcat8/bin/version.sh
Besser ?