Как установить JAVACMD
У меня есть Tomcat7
установить на CentOS (6.7)
система. Tomcat не будет работать, выбрасывая исключение в catalina.out
/usr/sbin/tomcat: line 29: -classpath: command not found
и связанные tomcat-initd.log
/usr/sbin/tomcat: error: Failed to set JAVACMD
Согласно этому сообщению SF, я должен быть в состоянии установить его в /usr/share/java-utils/java-functions
как это:
# Add all sorts of jvm layouts here
if [ -x "$JAVA_HOME/jre/sh/java" ]; then
JAVACMD="$JAVA_HOME/jre/sh/java"
elif [ -x "$JAVA_HOME/bin/java" ]; then
JAVACMD="$JAVA_HOME/bin/java"
else
JAVACMD=`which java 2>/dev/null`
fi
if [ ! -x "$JAVACMD" ]; then
echo "$0: error: Failed to set JAVACMD"
return 1
fi
Но я все еще получаю исключение. Чего не хватает? Что я не понимаю, и как мне разрешить исключение?
JAVA_HOME установлен:
echo $JAVA_HOME
/usr/java/jdk1.7.0_79
Проверка статуса кота:
sudo service tomcat status
PID file exists, but process is not running [WARNING]
tomcat lockfile exists but process is not running [FAILED]
Это верно даже после удаления pid-файла Tomcat, его промывания и повторения.
Запросить ответы:
whereis java
java: /usr/bin/java /etc/java /usr/lib/java /usr/share/java
ls -lad /usr/bin/java
lrwxrwxrwx. 1 root root 21 Jul 21 2015 /usr/bin/java -> /usr/java/jre1.8.0_51
ls -lad /etc/alternatives/java
lrwxrwxrwx. 1 root root 20 Jul 21 2015 /etc/alternatives/java -> /usr/java/glassfish4
после комментирования JAVA_HOME
в tomcat.conf
/etc/rc.d/init.d/tomcat start
Starting tomcat: [ OK ]
sudo service tomcat status
tomcat (pid 13517) is running... [ OK ]
1 ответ
Решение
Замените JAVA_HOME в /etc/tomcat/tomcat.conf на /usr/java/jre1.8.0_51