Próbowałem znaleźć najlepszy sposób, aby uruchomić środowisko Java Runtime OpenJDK jako domyślną Javę dla mojego pudełka Fedory i użyć Oracle JDK 6 dla rozwoju Androida, a mianowicie do uruchamiania Menedżera SDK Androida, Android Studio i Eclipse z pakietu Android.
Zainstalowałem Java Runtime OpenJDK z repozytorium Fedory, które ma alternatywne opcje instalacji w następujący sposób.
[donnie@fedora ~]$ alternatives --list | grep java
jre_openjdk auto /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.60-2.4.5.1.fc20.x86_64/jre
jre_1.7.0 auto /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.60-2.4.5.1.fc20.x86_64/jre
java auto /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.60-2.4.5.1.fc20.x86_64/jre/bin/java
libjavaplugin.so.x86_64 auto /usr/lib64/IcedTeaPlugin.so
Zainstalowałem Oracle JDK 6 przy użyciu rpm dostarczonych przez Oracle.
Mógłbym sprawić, by pakiet Android i Studio korzystały z JAVA_HOME do uruchamiania pod Oracle JDK, pozostając przy tym .bashrc
.
export JAVA_HOME=/usr/java/jdk1.6.0_45/
export PATH=$JAVA_HOME/bin:$PATH
Zauważyłem, że Chrome nadal korzysta z OpenJDK (ponieważ nadal muszę połączyć wtyczkę).
Jakie są różnice między JAVA_HOME a używaniem alternatyw?
źródło
java
ijavac
z różnych pakietów JDK z drugiej stronyJAVA_HOME=JAVALOCATION
przypominajava
,javac
ijavaws
dojava
,javac
ijavaws
wJAVALOCATION
odpowiednio.STUDIO_JDK
, co mogę dodać do,~/.profile
lub~/.bashrc
które jest używane przez Android Studio do pobierania JDK, ale myślę, że pakiet Androida (Eclipse i SDK Manager) tego nie uhonoruje.STUDIO_JDK
jest niestandardową rzeczą. Użyłbym alternatyw dla tych narzędzi i wybrałbymJAVA_HOME
ścieżkę, pod/usr/bin
którą zarządzaalternatives
. Po przeprowadzeniu aktualizacjialternatives
wystarczy zmienić .alternatives
iJAVA_HOME
powiedz/usr/bin/java
. Wygląda też naJAVA_HOME
przesłonięciaalternatives
.JAVA_HOME
, wskazując na/usr/bin
. Masz rację,JAVA_HOME
możesz działać niezależnie odalternatives
.