Es stellt sich heraus, dass die bestimmte Gradle-Binärdatei, die ich aus dem Ubuntu 13.10-Repository selbst heruntergeladen habe versucht JAVA_HOME zu exportieren. Danke an Lucas für diesen Vorschlag.
/usr/bin/gradle
Zeile 70:
export JAVA_HOME=/usr/lib/jvm/default-java
Das Auskommentieren dieser Zeile löst das Problem, und Gradle findet den richtigen Pfad zur Java-Binärdatei.
Wenn Sie die Binärdatei einfach von ihrer Website herunterladen, tritt dieses Problem nicht auf. Es handelt sich um ein Problem mit der Ubuntu-Repo-Version. Es scheint auch einige andere Probleme mit Version 13.10 zu geben.
fügen Sie einen symbolischen Link
hinzusudo ln -s /usr/lib/jvm/java-7-oracle /usr/lib/jvm/default-java
Die Lösung besteht darin, JAVA_HOME ==dir über dem bin zu erstellen, in dem javac lebt, wie in
type javac
javac is /usr/bin/javac # now check if its just a symlink
ls -la /usr/bin/javac
/usr/bin/javac -> /etc/alternatives/javac # its a symlink so check again
ls -la /etc/alternatives/javac # now check if its just a symlink
/etc/alternatives/javac -> /usr/lib/jvm/java-8-openjdk-amd64/bin/javac
OK, also habe ich endlich den Behälter über dem tatsächlichen Javac gefunden, also mach das hier
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH
oben kann vereinfacht und verallgemeinert werden zu
which javac >/dev/null 2>&1 || die "ERROR: no 'javac' command could be found in your PATH"
export JAVA_HOME=$(dirname $(dirname $(readlink -f $(which javac) )))