私は何年も手を伸ばしていないJavaプログラムを更新する任務を担っていますが、最新バージョンのJava OpenJDK 14.0.1.7-2を使用してCentos 7でそれを構築するのに問題があります。$ make all
Javaプログラムのコンパイルを開始するコマンドを実行すると、/bin/sh: javac: command not found
エラーメッセージが表示されます。
.bash_profile
私のホームディレクトリのファイルを編集し、以下を追加しました。
export JAVA_HOME=/usr/lib/jvm/java-14-openjdk-14.0.1.7-2.rolling.el7.x86_64/bin/java
次へ:$ source .bash_profile
変更を有効にして検証すると、期待した結果が出ましたが、echo $JAVA_HOME
それでも幸運ではありません。
これまでJava OpenJDK 1.8をインストールしてjavacリポジトリを接続したときにのみ、プログラムを正常に構築できました。
実行中のalternatives --display javac
最後の行に次のように表示されます。
Current `best' version is /usr/lib/jvm/java-1.7.0-openjdk 1.7.0.261-2.6.22.2.el7_8.x86_64/bin/javac.
私のシステムにJava OpenJDK V1.7がインストールされていないので、これは奇妙です。
実行中のalternatives --display java
最後の行に次のように表示されます。
Current `best' version is /usr/lib/jvm/java-14-openjdk-14.0.1.7-2.rolling.el7.x86_64/bin/java.
私がどこに間違っているのかについての提案は大いに感謝します。
ベストアンサー1
いくつかは、JAVA_HOME環境変数に実際のリポジトリへのパスがあることに気づきました。これを次のように変更してみてください。
JAVA_HOME=/usr/lib/jvm/java-14-openjdk-14.0.1.7-2.rolling.el7.x86_64/
PATH 環境変数を確認するには、次のコマンドを使用します。
find /bin/ /sbin/ /usr/sbin /usr/lib /usr/bin/ /usr/local/bin /usr/local/sbin ${HOME}/ /opt/ -type f -name 'javac' -exec dirname "{}" \;
エクスポート PATH=${PATH}:whatever-result-you-get-from-that または単に以下を見つけた場合:
export PATH=${PATH}:$(find /bin/ /sbin/ /usr/sbin /usr/lib /usr/bin/ /usr/local/bin /usr/local/sbin ${HOME}/ /opt/ -type f -name 'javac' -exec dirname "{}" \;)