1. ホーム
  2. java

[解決済み] エラーです。JAVA_HOME is not defined correctly executing maven

2022-03-06 03:58:05

質問

javaをインストールし、パス環境を設定しましたが echo $JAVA_HOME をターミナルで実行すると、次のような出力が得られます。

/usr/lib/jvm/java-7-oracle/jre/bin/java

もインストールしました。 apache-maven を変更し environment ファイルを開くと、次のようになります。

JAVA_HOME="/usr/lib/jvm/java-7-oracle/jre/bin/java"
M2_HOME=/usr/local/apache-maven/apache-maven-3.0.5
M2=$M2_HOME/bin
MAVEN_OPTS="-Xms256m -Xmx512m"
PATH=$M2:$PATH

しかし、私が実行すると mvn --version 警告が出ます。

Error: JAVA_HOME is not defined correctly.
  We cannot execute /usr/lib/jvm/java-7-oracle/jre/bin/java/bin/java

なぜ最後に繰り返されるのかがわからない /bin/java/bin/java

解決方法は?

bashシェルを使用し、OracleインストーラーでJavaをインストールしたと仮定すると、以下のように .bash_profile

export JAVA_HOME=$(/usr/libexec/java_home)
export PATH=$JAVA_HOME/jre/bin:$PATH

これは、正しい JAVA_HOME は、Oracle インストーラによって定義され、それを最初に $PATH が見つかるようにします。

また、後でJavaをアップデートする際に変更する必要がありません。

EDIT

コメントの通りです。

再起動後も持続させる

シェルの設定ファイルにこれらの行を追加するだけです。(仮にそれが bash )

.bashrc , .bash_profile または .profile (ubuntuの場合)

カスタムのJavaインストールを使用する

設定 JAVA_HOME を含まないカスタムJavaインストールパスのルートフォルダーに設定します。 $() .

JAVA_HOME=/opt/java/openjdk