Po rozwiązaniach online dla mniej ważnej wersji Javy na El Capitan, zobaczyłem kilka rozwiązań, które spowodowały, że albo wyłączyłeś tryb rootless, który nie podobał mi się dźwiękom lub po prostu nie działał już w OS X El Capitan.Nieobsługiwana wersja major.minor na Mac OS X El Capitan
Odpowiedz
Kiedy próbuje uruchomić webdriver-manager start
na El Capitan, może pojawić się błąd mówiąc:
Exception in thread "main" java.lang.UnsupportedClassVersionError: org/openqa/grid/selenium/GridLauncher : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:637)
at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Selenium Standalone has exited with code 1
Zalecana poprawka dla tej gry online jest zmiana dowiązania że Mac OS X ma na Java, które można znaleźć przez uruchomienie echo $JAVA_HOME
w terminalu.
Wskazuje nieprawidłowy folder, a błąd jest spowodowany tym, że aplikacja została skompilowana z wyższą wersją środowiska JRE niż w terminalu.
należy udać się do Oracle i pobrać najnowszą wersję JRE (http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html)
Po to został zainstalowany, trzeba będzie Java 8 na komputerze, ale nie aktualizuje terminal prawidłowo. Jeśli uruchomisz java -version
w swoim terminalu, zobaczysz Java Version "1.6"
, chcesz to powiedzieć Java Version "1.8"
. Poprzednim sposobem na to było ręczne zmienienie dowiązania symbolicznego, jednak od czasu El Capitan Apple uniemożliwiło niektórym folderom nawet użytkownikom adminów, z ich instalacją Rootless. Obejmuje to folder/usr.
Są dwa sposoby, aby to naprawić, pierwszy jest niebezpieczny i co wszyscy inni zalecają. Drugi, jest bezpieczniejszy i co tu robię.
Jeśli przejdziesz do swojego System Preferences -> Java -> Java -> View... -> System
i skopiuj pole Ścieżka.
To będzie wyglądać podobnie do następującego:
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java
Chcemy większość tej drogi, z wyjątkiem /bin/java
na końcu.
więc ścieżka powinna teraz zostać skopiowane jako:
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
uruchom następujące polecenie w terminalu, zastępując [ścieżka] ze ścieżką trzeba z góry.
export JAVA_HOME="[PATH]"
i uruchomić, że w terminalu.
Następnie uruchom java -version
ponownie i powinien teraz powiedzieć Java Version "1.8"
Teraz webdriver-manager start
powinien odnieść sukces.
To działało dla mnie, ale muszę też dodać 'export JAVA_HOME =" [PATH] "' do mojego .bash_profile. Jeśli nie, to przy każdym ponownym uruchomieniu ścieżka powraca do wersji 1.6. – Ryan
Jakie jest twoje pytanie? – EluciusFTW
Nie ma ani jednego. To jest samodzielna odpowiedź, która może pomóc innym, którzy mają ten sam problem, ponieważ spędziłem kilka godzin szukając rozwiązania i opublikowałem je poniżej. – Bowersbros