Używam Java SE 7 do programowania prostych gier dla systemu Windows i Mac, ale muszę przełączyć się na Javę 6, aby uruchomić na komputerze gry takie jak Minecraft. To działało dobrze, zanim zaktualizowałem system Mac OS X 10.8.2 Build 12C60.
Przed tą aktualizacją mogłem otwierać Preferencje Java i sprawdzać Java 6 lub Java 7. Ale teraz nie wydaje mi się, że mogę znaleźć Preferencje Java.
Używam OS X 10.8.2 (najnowsza wersja).
macos
osx-mountain-lion
java
Nikita Jerschow
źródło
źródło
Odpowiedzi:
Nie sądzę, aby można było zmienić JRE (środowiska wykonawcze), patrz tutaj:
http://docs.oracle.com/javase/7/docs/webnotes/install/mac/mac-jre.html
który stwierdza:
Obejście:
Miałem podobny problem jak ty z Minecraft z Wuala. Tam, gdzie musiałem uruchomić Wuala przy użyciu Java 1.6, podczas gdy musiałem rozwijać się z JDK 1.7 i udało mi się to, otwierając pakiet Wuala.app i zmieniając jego skrypt startowy w:
od:
do:
To znaczy po prostu zastępując
exec
:/usr/libexec/java_home -v 1.6.0 --exec
Jest to oczywiście dość zaangażowane i zostanie zerwane za każdym razem, gdy wuala autoupdates, ale w przeciwnym razie działa.
Aby użyć innego JDK, zobacz tutaj:
http://docs.oracle.com/javase/7/docs/webnotes/install/mac/mac-jdk.html
który stwierdza:
Oto ilustracja i przykłady z mojej konfiguracji:
Oracle JDK instaluje:
Firma Apple dostarczyła JDK:
Działa to również w przypadku korzystania z dostarczonego przez Apple 1.6 JDK
Wybierz spośród wersji Oracle 1.7:
Wybór pierwszego Oracle JDK 1.7.0_04
Wybór JDK 1.7.0_07
Domyślny JDK jest najwyższy:
Domyślnie ustawiony jest najwyższy „poziom łaty, gdy używany jest tylko niewielki numer wersji:
źródło
Z
java_home
mechanizmu można wygodniej korzystać.Załóżmy, że masz Java 7 jako domyślną:
Teraz aktywujmy Javę 6:
I oto jest:
Dodałem je do mojego
.bashrc
, aby wszystko było jeszcze wygodniejsze:java_ls
zmniejsza wydajnośćjava_home -V
do tylko numerów wersji. Ijava_use
to tylko skrót do tego, co zrobiliśmy powyżej. Np.java_use 1.6
Przejdzie na Javę 6.źródło
echo $PATH | awk -v RS=: -v ORS=: '/Library\/Java\/JavaVirtualMachines/ {next} {print}'| sed 's/:$//'
eksport ŚCIEŻKA = $ JAVA_HOME / bin: $ PATH java -version}Rozwiązanie do łatwego przełączania JDK (nie jestem pewien JRE) ( źródło ):
(dodaj powyższą funkcję do swojego
.bash_profile
)Stosowanie:
źródło
Szybkim obejściem jest utworzenie dowiązania symbolicznego do starego pliku binarnego Java 6:
Następnie uruchom aplikacje za pomocą: java6 -jar myapp.jar
źródło
Wydaje się, że aplikacja preferencji Java nie wyświetla już listy Java 1.6. Jednak gdy sprawdzę wersję Java w wierszu polecenia, otrzymuję:
źródło
Przełączanie wersji Java na OS X jest bardzo proste bez potrzeby zmiany zmiennej $ JAVA_HOME.
Korzystam z wersji 10.8.2, a moja zmienna $ JAVA_HOME wskazuje na / Library / Java / Home
Ta ścieżka jest dowiązaniem symbolicznym, co można zobaczyć po uruchomieniu polecenia ls -l
Domyślne łącze symboliczne wskazuje na
Aby przekierować Javę do mojej instalacji 1.7, po prostu zastępuję stary symboliczny link główny nowym linkiem symbolicznym wskazującym katalog główny mojej instalacji Java 1.7.
I voila! java -version pokazuje, że teraz korzystam z java 1.7. Wystarczy zmienić, który dowiązanie symboliczne nazywa się obecnie „Strona główna”, aby natychmiast zmienić domyślną wersję JRE Java.
źródło
Oto prosty sposób na zmianę Java 6 i Java 7 na Mac OSX.
krok 1: pobierz jdk 7 z oficjalnej strony oracle http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html i zainstaluj go krok po kroku, postępując zgodnie ze wskazówkami.
krok 2: ustaw $ JAVA_HOME w .bash_profile
krok 3: jeśli chcesz użyć jdk 6, po prostu alternatywną $ JAVA_HOME do ścieżki domowej jdk 6
źródło
Zarządzaj środowiskiem Java (na komputerach Mac i Linux): http://www.jenv.be/
Podobne do RVM dla Ruby i N dla Node, ale dla Java.
źródło
W oparciu o powyższe i trochę innych badań, opracowałem skrypt, który możesz „źródło” (lub „kropka”) do swojego profilu. Pojawi się monit z menu dostępnych JAVA_HOME na komputerze Mac, choć możesz także określić domyślny katalog główny lub wstępnie wybrać opcję menu.
W moim
.bash_profile
:Uwaga: wymaga zmiennej
PREJAVA_PATH
. Możesz także wywołać go z wiersza poleceń:Lub, aby wstępnie wybrać drugą opcję:
Plik
gojava
jest:źródło
Wersja @alex odpowiedzi powłoki ryby (dodaj do
~/config/fish/config.fish
):źródło