2015-02-02 16 views
5

Próbuję uruchomić Esemble8.jar na moim nowym RaspBerry pi. Śledziłem ten tutorial: http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/RaspberryPiFX/raspberryfx.htmlJavaFx Ensemble na Raspberry pi

udało mi się zainstalować Java8 ale gdy próbuję uruchomić Ensemble8.jar (lub dowolną inną małą aplikację JavaFX) Mam ten błąd:

Error: Could not find or load main class ensemble.EnsembleApp 

Moja ścieżka jest poprawny; masz jakieś sugestie, aby rozwiązać problem?

Dzięki!

+0

Którą wersję JDK8 używasz? –

+0

root @ raspberrypi: ~ # java -version wersja Java "1.8.0_33" Środowisko wykonawcze Java (TM) SE (wersja 1.8.0_33-b05) Klient wirtualny Java HotSpot (TM) (wersja 25,33-b05, tryb mieszany) – drenda

Odpowiedz

15

Od wersji 8u33 dla ARM, Oracle usunęło JavaFX z dystrybucji ARM, jak ogłoszono here.

można przeczytać kilka wypowiedzi na ten temat w tym forum:

  • Raspberry Pi Forum (teraz jest niedostępny)
  • OpenJFX Mailing list

Więc nie będzie w stanie uruchomić dowolnej aplikacji JavaFX ... chyba że obniżysz wersję do najnowszej wersji JDK8u6 obsługującej JavaFX lub podasz poprawną jfxrt.jar.

Możesz to zrobić po tym tutorial, krzyżu budując OpenJFX dla ARM, lub po prostu używając już zbudowanej dystrybucji takiej jak ta one hostowanej w projekcie JavaFXPorts.

Po pobraniu armv6hf-sdk.zip, rozpakuj go i trzeba dodać tę opcję wiersza poleceń do dołączania tego zewnętrznego źródła do ścieżki klasy, z mechanizmem rozszerzeń:

-Djava.ext.dirs=<path to armv6hf-sdk>/rt/lib/ext 

Na przykład, trzeba to uruchomić jedna ze starych próbek JavaFX z aktualnej ścieżki:

sudo /opt/jdk1.8.0_33/bin/java -Djava.ext.dirs=<path to armv6hf-sdk>/rt/lib/ext -jar BrickBreaker.jar 
+3

Możesz rozważyć instalację (kopiowanie lub dowiązanie symboliczne) zawartości 'rt/lib/ext' oraz' rt/lib/ext' bezpośrednio do swojej maszyny JVM, np .: '/ opt/jdk1.8.0_33/jre/lib/ext' i '/ opt/jdk1.8.0_33/jre/lib/arm' odpowiednio. Spowoduje to usunięcie potrzeby uruchamiania aplikacji za pomocą dyrektywy '-Djava.ext.dirs = <ścieżka do armv6hf-sdk>/rt/lib/ext' –

+1

Próbowałem pobrać plik' armv6hf-sdk.zip' i dodał go do mojego katalog projektu. Dodałem "javafx-mx.jar", "jfxrt.jar" i "jfxswt.jar" do moich bibliotek projektu i do katalogu wyjściowego. Jednak mój pi stil mówi, że nie może znaleźć głównej klasy. –

+1

@ JoëlAbrahams Sprawdź to [pytanie] (http://stackoverflow.com/questions/40481455/running-javafx-gui-on-the-raspberry-pi/40483500#40483500) –

Powiązane problemy