Tôi biết rằng Oracle đã loại bỏ JavaFX trong 8u33, nhưng tôi tự hỏi tại sao tôi không thể sử dụng JavaFX với jdk1.8.0? Tôi đã nhận nó từ các tài liệu lưu trữ Oracle (http://download.oracle.com/otn/java/jdk/8-b132/jdk-8-linux-arm-vfp-hflt.tar.gz)JavaFX trên ARM chạy jdk1.8.0
Tôi đã này được chiết xuất trong /usr/bin/java_8_arm/jdk1.8.0
và đang chạy file .jar của tôi với sudo /usr/bin/java_8_arm/jdk1.8.0/bin/java -jar jarfile.jar
Chạy /usr/bin/java_8_arm/jdk1.8.0/bin/java -version
lợi nhuận
java version "1.8.0"
Java (TM) SE Runtime Environment (build 1.8.0-b132)
Java HotSpot (TM) client VM (build 25.0-b70, mixed mode)
và chạy System.out.println("Running Java version: " + Runtime.class.getPackage().getImplementationVersion());
trả về Running Java Version: 1.8.0
Các lỗi tôi nhận được là:
Exception in thread "main" java.lang.NoClassDefFoundError: javafx/embed/swing/JFXPanel
at front_end.GUI.initGUI(GUI.java:47)
at back_end.Run.main(Run.java:28)
Caused by: java.lang.ClassNotFoundException: javafx.embed.swing.JFXPanel
at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 2 more
Nếu bạn đang tự hỏi, tôi đang lập trình và biên soạn chương trình vào một tập tin chia sẻ qua Windows 7 và chạy JAR từ một Pi mâm xôi.
inb4 "tại sao bạn cần javafx trên pi mâm xôi" - để hiển thị html, vì các thành phần java khác chỉ hỗ trợ html 3.2. Tôi đã thử các trình kết xuất khác. Đây là người duy nhất tôi thậm chí có thể làm việc ngay trên máy tính để bàn của tôi, hãy để một mình RPi.
Ngoài ra, tôi cũng đang lập trình và biên dịch trên 1.8.0.
UPDATE:
Như mỗi câu trả lời José Pereda, tôi đã tải về các tập tin JavaFX và đặt chúng trong java ban đầu của tôi cài đặt (bây giờ tôi đang sử dụng /usr/bin/jdk8u6/
như thư mục của tôi, và rõ ràng là jdk1.8.0_06
).
Đây là hệ thống phân cấp cài đặt của tôi, bắt đầu từ thư mục lib
:
/usr/bin/jdk8u6/lib/:
arm ext javafx.properties jfxswt.jar tools.jar
ct.sym ir.idl jconsole.jar orb.idl
dt.jar javafx.platform.properties jexec sa-jdi.jar
/usr/bin/jdk8u6/lib/arm:
jli libgstreamer-lite.so libjfxmedia.so
libdecora_sse.so libjavafx_font_freetype.so libjfxwebkit.so
libfxplugins.so libjavafx_font_pango.so libprism_common.so
libglass_monocle.so libjavafx_font.so libprism_es2_eglfb.so
libglass_monocle_x11.so libjavafx_iio.so libprism_es2_monocle.so
libglass.so libjawt.so libprism_sw.so
/usr/bin/jdk8u6/lib/arm/jli:
libjli.so
/usr/bin/jdk8u6/lib/ext:
jfxrt.jar
tôi vẫn nhận được lỗi tương tự.
Cảm ơn bạn đã từng triển khai từ xa, tôi có thể sử dụng điều đó. Đối với phần còn lại, thử nghiệm bây giờ – zfollette
Không hoạt động. Cập nhật OP – zfollette
Ah, tôi quên đề cập đến: Swing chưa bao giờ được hỗ trợ trong JavaFX cho ARM, nhưng vì bạn đang sử dụng JavaFX với một WebView, bạn có thể sử dụng nó không? –