GNU/Linux >> Znalost Linux >  >> Linux

Gradle najde nesprávnou JAVA_HOME, i když je správně nastavena

Ukázalo se, že konkrétní binární soubor Gradle, který jsem stáhl z úložiště Ubuntu 13.10 samotný pokusí exportovat JAVA_HOME. Děkuji Lucasovi, že to navrhl.

/usr/bin/gradle řádek 70:

export JAVA_HOME=/usr/lib/jvm/default-java

Zakomentování tohoto řádku problém vyřeší a Gradle najde správnou cestu k binárce Java.

Pokud si právě stáhnete binární soubor z jejich webových stránek, tento problém nemá, je to problém s repo verzí Ubuntu. Také se zdá, že existují nějaké další problémy s verzí 13.10.


přidejte symbolický odkaz

sudo ln -s /usr/lib/jvm/java-7-oracle /usr/lib/jvm/default-java

Řešením je vytvořit JAVA_HOME ==dir nad košem, kde žije javac jako v

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, takže konečně našel koš nad skutečným javacem, takže udělejte toto

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH

výše lze zjednodušit a zobecnit na

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)  )))

Linux
  1. Příklady exportních příkazů pro Linux (jak nastavit proměnné prostředí)

  2. Linux, proč nemohu psát, i když mám skupinová oprávnění?

  3. Tomcat 7:Jak správně nastavit počáteční velikost haldy?

  1. Jak nastavit cestu JAVA_HOME na Ubuntu?

  2. Instalace PIP nemůže najít ffi.h, i když rozpoznává libffi

  3. JAVA není v cestě, ačkoli je nastavena JAVA_HOME

  1. Linux Framebuffer správně nastavil rozlišení

  2. dlsym vrátí NULL, i když symbol existuje

  3. Virtualenv používá nesprávný python, i když je první v $PATH