Java >> Java tutorial >  >> Tag >> switch

Apple - Hvordan kan jeg skifte mellem de to Java-versioner i Mountain Lion, nu hvor Java-præferencer er væk?

Åbn en terminal med denne kommando:

/usr/libexec/java_home -v 1.6 

Du kan ændre 1.6 til enhver version af java, du vil bruge, og kommandoen vil udlæse placeringen af, hvor den version af java ligger. (dvs.:/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home)

så kan du indstille JAVA_HOME som du plejer med outputtet fra den forrige kommando. dvs.:

export JAVA_HOME=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

Så for at forenkle; noget som dette burde virke:

export JAVA_HOME=$(/usr/libexec/java_home -v 1.6)

husk at tjekke versionen med:

java -version

Håber det hjælper.


Du har muligvis brug for to tilgange:

  • en for at skifte version for applet-plugin alene
  • en anden tilgang til at skifte version for andre dele af JRE uden at skifte version for applet-plug-in'et.

Mit seneste anvendelsestilfælde:

  • Java 8 til apps, der ikke bruger plug-in'et
  • Java 7-opdatering 9 til applet-plugin.

For at skifte applet-plugin, men ikke andre dele af JRE/JDK fra Java 8 til Java 7 Update 9

  1. luk webbrowsere og andre apps, der bruger Java eller Java-applet-plugin'et
  2. installer JDK 8
  3. sæt plug-in'et til side
  4. installer JRE 7 Update 9 eller JDK 7 Update 09.

Sæt til side:foreslået flytning

sudo mv /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin /private/var/tmp

Hvis du planlægger at skifte ofte foretrækker du måske en anden midlertidig placering.

Resultat

sh-3.2$ java -version
java version "1.8.0-ea"
Java(TM) SE Runtime Environment (build 1.8.0-ea-b58)
Java HotSpot(TM) 64-Bit Server VM (build 25.0-b02, mixed mode)
sh-3.2$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.8.2
BuildVersion:   12C60

Samtidig:

For at skifte applet-plugin, men ikke andre dele af JRE/JDK, fra Java 7 Update 9 til Java 6 Update 37

Svar under:

  • Genaktiver Apple Java 6 SE fra kommandolinjen?

For at skifte JRE, men ikke applet-plug-in'et fra Java 8 til Java 7 Update 9

Installer JDK 7 Update 09 og derefter JDK 8

  • OS og apps vil som standard bruge den bedste version.

Afslut alle apps, der bruger Java. Ingen grund til at afslutte browseren.

Sæt jdk1.8 til side … bibliotek fra

/Library/Java/JavaVirtualMachines

  • OS og apps vil bruge Java 7 Update 9.

For at skifte JRE, men ikke applet-plug-in'et fra Java 7 Update 9 til Java 6 Update 37

Afslut alle apps, der bruger Java. Ingen grund til at afslutte browseren.

Sæt jdk1.7 til side … bibliotek fra

/Library/Java/JavaVirtualMachines

  • OS og apps vil bruge Java 6 Update 37.

Eksempel

macbookpro08-centrim:~ gjp22$ java -version
java version "1.7.0_09"
Java(TM) SE Runtime Environment (build 1.7.0_09-b05)
Java HotSpot(TM) 64-Bit Server VM (build 23.5-b02, mixed mode)
macbookpro08-centrim:~ gjp22$ sudo mv /Library/Java/JavaVirtualMachines/jdk1.7.0_09.jdk /private/var/tmp
Password:
macbookpro08-centrim:~ gjp22$ java -version
java version "1.6.0_37"
Java(TM) SE Runtime Environment (build 1.6.0_37-b06-434-11M3909)
Java HotSpot(TM) 64-Bit Server VM (build 20.12-b01-434, mixed mode)

Generelt

For brugere af OS X er noget af det, der leveres af Oracle, oprindeligt vildledende:

  • Hvorfor adskiller den version af Java, der er verificeret af Oracle, sig fra den version, der vises på kommandolinjen?

… og så videre.

Enkelhed

Selvom intet af ovenstående er så simpelt som at skifte med Java Preferences-appen, der tidligere er installeret af Apple, er den relativt enkle tilgang at sætte til side (intet behov for speciel afinstallation) minder om ønsket om træk-og-slip installation … tidligere udtrykt i openjdk-osx-build-området.

Nogen kunne godt tænke sig at bygge en app, men jeg bør ikke anbefale at bruge symbolske links – det ville fungere, men kunne være uforenligt med fremtidige træk-og-slip-tilgange til installation.

Sidebemærkninger

I skrivende stund er de seneste understøttede udgivelser, som Oracle for laver opdateringer offentligt tilgængelige er (for andre platforme end OS X) Java 6 Update 37 og (for platforme inklusive OS X) Java 7 Update 9.

Da større udgivelser vil blive gjort tilgængelige, bedes du genfortolke dette svar i overensstemmelse hermed.

Java-versionsterminologien i dette svar er i overensstemmelse med Java Help Center-terminologien.


Det ser ud til, at du bliver nødt til at gøre det manuelt. Oracles dokumentation siger, at der kun kan installeres én JRE ad gangen.

Denne Apple-supportside beskriver, hvordan du skifter mellem Apple SE 6 JRE og Oracle SE 7 JRE. Kort sagt, for at skifte fra Oracles JRE tilbage til Apples, start Terminal-appen og skriv følgende:

sudo mkdir -p /Library/Internet\ Plug-Ins/disabled

sudo mv /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin /Library/Internet\ Plug-Ins/disabled

sudo ln -sf /System/Library/Java/Support/Deploy.bundle/Contents/Resources/JavaPlugin2_NPAPI.plugin /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin

Der er flere (og bedre) instruktioner på supportsiden om, hvordan du skifter Web Start tilbage til JRE 6, og hvordan du skifter alt tilbage til Oracle JRE 7 (geninstaller JRE).

Ikke så simpelt som at bruge Java Preferences-værktøjet, men bedre end ingenting.


Java tag