2

私のJAVA_HOMEは正しく設定されています/usr/local/java/jdk1.7.0_01

$echo $JAVA_HOME
/usr/local/java/jdk1.7.0_01

$sudo update-alternatives --config java

There are 3 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      auto mode
  1            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      manual mode
* 2            /usr/local/java/jdk1.7.0_01/bin/java             1         manual mode
  3            /usr/local/java/jre1.7.0_01/bin/java             1         manual mode

mvn release:prepare プラグインを使用して git タグを生成し、pom.xml でプロジェクトのバージョンを反転しています。Maven 2.2.1 を使用すると完璧に動作します。Maven 3.0.4 を使用すると、次のようになります。

[INFO] Error: JAVA_HOME is not defined correctly.
[INFO]   We cannot execute /usr/local/java/jdk1.7.0_01/bin/java/bin/java

Maven 3 にバグがある可能性があると思います。実行/bin/javaすると、JAVA_HOME に 2 回追加しようとします。

4

4 に答える 4

2

オプションである場合は、標準のOracle /SunJDKを使用してみてください。私は以前にDebian/Ubuntuでこれを自分でヒットしました。OpenJDKの何が問題なのかを理解するのに我慢できませんでしたが、Mavenにはうまく対応できません。または...少なくとも...それは私の観察でした。

于 2013-03-04T18:36:16.893 に答える
2

JAVA_HOME は jre を指す必要があり、次のように設定します。

export JAVA_HOME=/usr/local/java/jdk1.7.0_01/jre
于 2014-11-12T08:04:03.977 に答える
0

mvn コマンド ファイルで JAVA_HOME を検索します (which mvn検索に使用します)。まだ定義されていない場合、私はJAVA_HOMEを処理します。

だからおそらくあなたはそれを回避することができますunset JAVA_HOME

于 2016-11-17T01:13:58.097 に答える