Soy bastante nuevo en Linux y he estado enfrentando este problema y me preguntaba si algo puede ayudar a resolverlo. Entonces, cuando intento cerrar Tomcat, aparece este error. Como puede ver, 'bin' se repite en la ruta. Puedo ver que está seleccionando la ruta incorrecta, pero no estoy seguro de qué variable debe modificarse cuando revisé $JAVA_HOME y $PATH, y parecen estar bien.
bash-4.1$ ./shutdown.sh
Using CATALINA_BASE: /apps/opt/apache-tomcat-7.0.77
Using CATALINA_HOME: /apps/opt/apache-tomcat-7.0.77
Using CATALINA_TMPDIR: /apps/opt/apache-tomcat-7.0.77/temp
Using JRE_HOME: /usr/java/jre1.8.0_121/bin
Using CLASSPATH: /apps/opt/apache-tomcat-7.0.77/bin/bootstrap.jar:/apps/opt/apache-tomcat-7.0.77/bin/tomcat-juli.jar
/apps/opt/apache-tomcat-7.0.77/bin/catalina.sh: line 467: /usr/java/jre1.8.0_121/bin/bin/java: No such file or directory
Además, marcó como 467 y esto es lo que dice y no estoy seguro de qué hacer. Así es como esto luce:
466
467 eval "\"$_RUNJAVA\"" $LOGGING_MANAGER $JAVA_OPTS \
468 -Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \
469 -Dcatalina.base="\"$CATALINA_BASE\"" \
También así es como se ven PATH y JAVA_HOME.
bash-4.1$ echo $JAVA_HOME
:/usr/java/jre1.8.0_121/bin/java
bash-4.1$ echo $PATH
/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/vzwhome/mehtta4/bin:/apps/opt/databuck/opt/bin:/apps/opt/databuck/opt/node/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/vzwhome/mehtta4/bin:/usr/java/jre1.8.0_121/bin/java
Respuesta1
Parece que su JRE_HOME
variable contiene la ruta /usr/java/jre1.8.0_121/bin
y catalina.sh
se utiliza $JRE_HOME/bin/java
como ruta completa al java
ejecutable.
$JRE_HOME/bin/java
se expandirá a /usr/java/jre1.8.0_121/bin/bin/java
lo que no se puede encontrar.
Es probable que JRE_HOME
deba establecerse en /usr/java/jre1.8.0_121
en lugar de en /usr/java/jre1.8.0_121/bin
.
Hay unresponda con un comentario en StackOverflow que confirme esto, y eso continúa diciendo que si no está configurado, se usará JRE_HOME
el valor de en su lugar.JAVA_HOME