路徑變數中的資料夾名稱重複

路徑變數中的資料夾名稱重複

我對 Linux 相當陌生,一直面臨這個問題,想知道是否有什麼可以幫助解決它。因此,當我嘗試關閉 Tomcat 時,這就是我收到的錯誤。正如您所看到的,“bin”在路徑中重複出現。我可以看到它選擇了錯誤的路徑,但在檢查 $JAVA_HOME 和 $PATH 時不確定需要修改哪個變量,它們似乎沒問題。

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

另外,檢查像 467 ,這就是它所說的,我不知道該怎麼做。它是這樣的:

   466
    467   eval "\"$_RUNJAVA\"" $LOGGING_MANAGER $JAVA_OPTS \
    468     -Djava.endorsed.dirs="\"$JAVA_ENDORSED_DIRS\"" -classpath "\"$CLASSPATH\"" \
    469     -Dcatalina.base="\"$CATALINA_BASE\"" \

這也是 PATH 和 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

答案1

看起來好像您的JRE_HOME變數包含路徑/usr/java/jre1.8.0_121/bin,並且該路徑catalina.sh用作可執行檔案$JRE_HOME/bin/java的完整路徑java

$JRE_HOME/bin/java將擴展到/usr/java/jre1.8.0_121/bin/bin/java無法找到的位置。

很可能應該JRE_HOME設定為/usr/java/jre1.8.0_121而不是 to /usr/java/jre1.8.0_121/bin

有一個在 StackOverflow 上用評論回答,證實了這一點,接著說如果未設置,則將使用JRE_HOME的值。JAVA_HOME

相關內容