Jag vill programmera med den senaste JavaFX, som kräver Java 8. Jag använder IntelliJ 13 CE och Mac OS X 9 Mavericks. Jag körde Oracles Java 8-installationsprogram och filerna ser ut att hamna på följande adress
/Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk
men tidigare versioner finns på
/System/Library/Java/JavaFrameworks/jdk1.6....
Jag är inte säker på varför det senaste installationsprogrammet lägger detta i /Library
istället för /System/Library
(eller vad skillnaden är). Men /usr/libexec/java_home
hittar inte 1.8, så alla inlägg som jag har hittat om hur du ställer in din nuvarande java-version fungerar inte. Jag har försökt lägga till en symbolisk länk för att få det att se ut som om 1.8 finns i sökvägen /System/Library...
, men det hjälper inte. /usr/libexec/java_home -V
visar fortfarande bara den gamla Java 1.6.
Ironiskt nog visar kontrollpanelen "Java" under Systeminställningar endast Java 1.8!
Varför lägger inte Oracle's installationsprogram det där det verkligen ska vara? Och hur kan jag komma runt detta problem?
Oracle har ett dåligt rykte när det gäller att göra det enkelt att installera och konfigurera Java, men med hjälp av Homebrew kan den senaste OpenJDK (Java 13) installeras med:
brew cask install java
För de många användningsfall som är beroende av en äldre version (vanligen Java 8) gör projektet AdoptOpenJDK det möjligt med ett extra steg.
brew tap adoptopenjdk/openjdk
brew cask install adoptopenjdk8
Befintliga användare av Homebrew kan stöta på Error: Cask adoptopenjdk8 exists in multiple taps
på grund av tidigare lösningar med olika instruktioner. Detta kan lösas genom att fullt ut specificera platsen med brew cask install adoptopenjdk/openjdk/adoptopenjdk8
.
Jag har program som använder både Java 7 och 8 och måste hela tiden gå fram och tillbaka.
Jag använder det här skriptet som skrivits av Johan:
http://www.jayway.com/2014/01/15/how-to-switch-jdk-version-on-mac-os-x-maverick/
Du kan nu ställa in den vid start eller anropa skriptet efteråt.
Installera JDK för Mac.
Java 7
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
Java 8
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Jag hade också samma problem. Men efter en liten prövning lyckades jag lösa problemet.
Prova att ta bort 1.6 sdk med sudo rm och starta om din mac.
Ladda ner .dmg-filen igen. Chansen är stor att .dmg-installationsprogrammet som du laddade ner kan vara skadat. Installera på nytt.
Kör följande kommando efter installationen. Det ger sökvägen för jdk 8. /usr/libexec/java_home -v 1.8
Du kan också köra och se mappen jdk 8. Filerna kan vara dolda. ls -al /Library/Java/JavaVirtualMachines/