2015-01-09 7 views
8

zainstalowaniu Java 8 SDK (z aktualizacją 25 do JRE) z witryny Oracle Java zgodnie z instrukcjami na tej stronieOS X Yosemite nie znalezienie Java 8 Runtime

http://docs.oracle.com/javase/8/docs/technotes/guides/install/mac_jdk.html 

i umieścić następującą linię w moim ~/.bash_profile

export JAVA_HOME="/usr/libexec/java_home -v 1.8" 

ale gdy próbuję skompilować lub uruchomić program Java w bash I pojawia się następujący komunikat

No Java runtime present, requesting install. 

i okno

![enter image description here][1] 

Pobiegłem /usr/libexec/java_home sprawdzić:

$ /usr/libexec/java_home 
Unable to find any JVMs matching version "(null)". 
No Java runtime present, try --request to install. 

Ale JRE jest w

/System/Library/Frameworks/JavaVM.framework/Versions/Current 

a lokalizacja JRE w oknie Preferencje systemowe jest skierowany do

/Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin 

Nie mam problemu, ale usr/bin/javac i /usr/bin/java nie są w stanie znaleźć poprawnej lokalizacji JVM w /System/Library/Frameworks/JavaVM.framework/Versions/Current.

Odpowiedz

3

Trzeba dodać kilka odwrócone, pojedyncze apostrofy:

export JAVA_HOME="`/usr/libexec/java_home -v 1.8`" 

W /usr/libexec/java_home wyjścia polecenia właściwą wartość dla JAVA_HOME na standardowe wyjście, trzeba użyć odwrócone, pojedyncze apostrofy, aby uchwycić tę wartość, dzięki czemu można przechowywać ją w zmiennej.

Ale JRE jest w /System/Library/Frameworks/JavaVM.framework/Versions/Current

Nie, tak nie jest. Oracle JRE instaluje się pod /Library/Internet Plug-Ins, Oracle JDK instaluje pod /Library/Java/JavaVirtualMachines. Pliki binarne pod numerami /usr/bin i /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands to kody pośredniczące, które przekazują dowolne dane JDK do zmiennych o JAVA_HOME.

+2

Tak zrobiłem to i środkami do '~/.bash_profile' ale mówi ' Ostatnie logowanie: Fri Jan 9 13 : 45: 17 na ttys000' 'Nie można znaleźć żadnych JVM pasujących do wersji" 1.8 ".' Brak środowiska wykonawczego Java, spróbuj - żądanie instalacji. – kromer

+1

@kromer czy zdecydowanie zainstalowałeś _JDK_, a nie tylko _JRE_ ? Czy masz coś pod '/ Library/Java/JavaVirtualMachines'? –

+0

dzięki za sugestię, ale to nie działa - 'Nie można znaleźć żadnych pasujących JVMs wersji„1.8”.' ' Nie Java Runtime występuje, spróbuj --request do install.' – kromer

1

Próbowałem już kilku rozwiązań, pobierając kilka SDK, ale Android Studio nie uznał ich za prawidłowe SDK.

Wreszcie obejście że pracował dla mnie było:

  1. Usuń Android Studio.app i preferencji Android Studio (~/Library/Preferences/AndroidStuido).
  2. Zmień nazwę/usr/libexec/java_home na java_home.bak.
  3. Zainstaluj ponownie Android Stuido.
  4. Gdy Android Studio pyta o poprawny pakiet Java SDK, postępuj zgodnie z linkiem dostarczonym przez Studio Android i pobierz tę instalację java.
  5. Po instalacji naciśnij przycisk wykrywania w Android Studio i uruchom.
7

jakie napotkał ten sam problem, myślę, że należy zainstalować JDK ale nie JRE

+0

To rozwiązuje mój problem. Dziękuję Ci –