Windowsでは同様の質問に答えたが、Linuxではそれほど多くなかったので、誰もがこの問題を解決するのに役立つことができればと思います。私はLinux mint 20.2(Uma)を実行しています。
Mavenプロジェクトの実行に問題があります。エラーが発生します。
The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE
JavaとMavenを完全に削除し、JDK17とJAVA_HOMEを設定しました。
$ echo $JAVA_HOME
/usr/lib/jvm/jdk-17.0.2
構成ファイル設定を含める
$ grep JAVA_HOME /etc/profile
JAVA_HOME=/usr/lib/jvm/jdk-17.0.2
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME
and.bashrc
$ grep JAVA_HOME ~/.bashrc
JAVA_HOME=/usr/lib/jvm/jdk-17.0.2
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME
また、JAVA_HOMEを以前のJDKにリダイレクトするmaven.sh
ファイルを見つけて削除しました。/etc/profile.d/
しかし、これらのすべての質問にもかかわらず、何かがまだJAVA_HOMEを以前のJDKにリダイレクトしているのか正しく設定していないのかわかりませんmvn
。で変更を逆追跡したかなりかなり古い。
誰でもこの問題を解決する方法についてのアイデアがある場合は、大変感謝します。みんなありがとうございます。
答え1
考えられる問題の1つはパス変数です。 JREとJDK binの両方が含まれています。に変更し、PATH=$PATH:JAVA_HOME/bin
JDKバイナリのみがアクセスできるようにすることをお勧めします。これは私の設定で、何の問題もありませんでした。
役に立たない場合はダウンロードすることをお勧めします。オープンJDK、解凍してダウンロードしたOpenJDKディレクトリにパスを変更します。