Debian-Wheezy
通過 init.d 啟動 tomcat 可以,但不能通過服務
來自儲存庫和 Debian Wheezy 的 Tomcat 7。
如果我嘗試通過服務啟動 Tomcat,它不起作用
service tomcat7 start [FAIL] no JDK found - please set JAVA_HOME ... failed!
但變數在那裡
/var/lib/tomcat7/conf# echo $JAVA_HOME /usr/lib/jvm/java-7-oracle
如果我從 init.d 嘗試它確實有效
/etc/init.d/tomcat7 start [ ok ] Starting Tomcat servlet engine: tomcat7.
查看 /etc/inittab
# The default runlevel. id:2:initdefault:
預設似乎是 2
因此,查看 /etc/rc2.d
lrwxrwxrwx 1 root root 17 Nov 18 22:50 S01tomcat7 -> ../init.d/tomcat7
似乎它總是指同一個 /etc/init.d/tomcat7 我不明白為什麼它會失敗(抱怨 java)..
當您直接執行初始化腳本時,將使用您的 shell 環境。當您執行服務命令時,它不是。您應該在*/etc/default/tomcat7*中設置 JAVA_HOME 。
您需要使用 Java 安裝目錄路徑的值創建一個名為 JAVA_HOME 的環境變數。
如果您要進行部署,請使用 jre 路徑,如果您需要訪問開發工具,請使用 jdk 路徑。