gradle を実行しようとすると、次のエラーが発生します。
# gradle
ERROR: JAVA_HOME is set to an invalid directory: /usr/lib/jvm/default-java
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation.
ただし、JAVA_HOME 変数を確認すると、次のようになります。
# echo $JAVA_HOME
/usr/lib/jvm/java-7-oracle
私の JAVA_HOME は .bashrc で定義されており、それがソースとして設定されていることを再確認しました。
実行すると、java -version
JAVA_HOME が正しく設定され、PATH 上にあることも確認されます。
# java -version
java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)
/usr/bin/java
また、シンボリックリンク/etc/alternatives/java
が正しくシンボリックリンクされているかどうかも確認しました。/usr/lib/jvm/java-7-oracle/jre/bin/java
.bash_profile
さらに、またはに重複した JAVA_HOME 定義がないことも確認しました/etc/profile
。
私の質問は、Gradle が をどのように/なぜ見つけるのか/usr/lib/jvm/default-java
、そしてもっと重要なのは、どうすれば正しいディレクトリを指定できるのかということです。
JDK を必要とする他のプログラムは正常に動作するため、これは Gradle の問題だと思います。Gradle の再インストールも試みましたが、違いはありませんでした。
私は64ビットのXubuntu(Ubuntu 13.10ベース)を実行しています
ベストアンサー1
Ubuntu 13.10リポジトリからダウンロードした特定のGradleバイナリが自体JAVA_HOMEをエクスポートしようとします。ルーカスこれを提案していただきありがとうございます。
/usr/bin/gradle
70行目:
export JAVA_HOME=/usr/lib/jvm/default-java
この行をコメントアウトすると問題は解決し、Gradle は Java バイナリへの正しいパスを見つけます。
バイナリをダウンロードするだけでWebサイトこの問題は発生していません。これは Ubuntu リポジトリのバージョンの問題です。13.10 バージョンには他にもいくつか問題があるようです。