JavaFX 2.0 入门指南:跨平台应用开发

1星 需积分: 9 1 下载量 88 浏览量 更新于2024-07-23 收藏 3.7MB PDF 举报
"JavaFX 2.0 入门指南" JavaFX 2.0 是 Java 的下一代图形用户界面(GUI)工具包,旨在帮助开发者快速构建富媒体跨平台应用程序。 JavaFX 2.0 从头开始设计,充分利用现代 GPU 的硬件加速图形功能,同时提供了良好的编程接口,使开发者能够轻松地组合图形、动画和用户界面控件。 **JavaFX 2.0 的主要特点** * 硬件加速图形:JavaFX 2.0 利用现代 GPU 的硬件加速图形功能,提供了快速高效的图形渲染性能。 * 纯 Java 语言 API:JavaFX 2.0 是一个纯 Java 语言应用程序编程接口(API),无需学习新的语言或工具。 * 跨平台应用程序:JavaFX 2.0 能够运行在多种平台上,包括 Windows、Mac OS X 和 Linux 等。 * reuse of existing Java libraries:JavaFX 2.0 提供了对现有 Java 库的支持,能够重用现有的 Java 代码和库。 * Bridging of communication between other languages:JavaFX 2.0 还提供了与其他语言(如 Visage、Jython、Groovy、JRuby 和 Scala 等)的通信桥梁,能够与其他语言进行交互和集成。 **JavaFX 2.0 的架构策略** * reuse of existing Java libraries:JavaFX 2.0 重用现有的 Java 库,避免了重复造轮的工作,提高了开发效率。 * Bridging of communication between other languages:JavaFX 2.0 提供了与其他语言的通信桥梁,扩展了 JavaFX 的应用范围。 **JavaFX 2.0 的应用场景** * Rich Internet Applications(RIA):JavaFX 2.0 可以用来构建富媒体的互联网应用程序,提供了良好的用户体验。 * Desktop Applications:JavaFX 2.0 可以用来构建桌面应用程序,提供了快速高效的图形渲染性能。 * Mobile Applications:JavaFX 2.0 可以用来构建移动应用程序,提供了跨平台的应用程序开发体验。 **JavaFX 2.0 的优点** * 高效的图形渲染性能:JavaFX 2.0 利用现代 GPU 的硬件加速图形功能,提供了快速高效的图形渲染性能。 * 跨平台应用程序:JavaFX 2.0 能够运行在多种平台上,包括 Windows、Mac OS X 和 Linux 等。 * 良好的用户体验:JavaFX 2.0 提供了良好的用户体验,能够满足用户的需求。 **JavaFX 2.0 的应用领域** * 互联网应用程序:JavaFX 2.0 可以用来构建富媒体的互联网应用程序,提供了良好的用户体验。 * 桌面应用程序:JavaFX 2.0 可以用来构建桌面应用程序,提供了快速高效的图形渲染性能。 * 移动应用程序:JavaFX 2.0 可以用来构建移动应用程序,提供了跨平台的应用程序开发体验。 **JavaFX 2.0 的发展前景** * Rich Internet Applications(RIA):JavaFX 2.0 将继续推动 RIA 的发展,提供了良好的用户体验和高效的图形渲染性能。 * 桌面应用程序:JavaFX 2.0 将继续推动桌面应用程序的发展,提供了快速高效的图形渲染性能。 * 移动应用程序:JavaFX 2.0 将继续推动移动应用程序的发展,提供了跨平台的应用程序开发体验。 JavaFX 2.0 是一个功能强大且灵活的 GUI 工具包,能够满足各种应用程序的需求。

Exception in Application constructor Exception in thread "main" java.lang.reflect.InvocationTargetException at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at java.base/sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:1071) Caused by: java.lang.RuntimeException: Unable to construct Application instance: class com.example.demo.Main at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:891) at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:196) at java.base/java.lang.Thread.run(Thread.java:833) Caused by: java.lang.IllegalAccessException: class com.sun.javafx.application.LauncherImpl (in module javafx.graphics) cannot access class com.example.demo.Main (in module com.example.javafxtest) because module com.example.javafxtest does not export com.example.demo to module javafx.graphics at java.base/jdk.internal.reflect.Reflection.newIllegalAccessException(Reflection.java:392) at java.base/java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:674) at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:489) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480) at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$8(LauncherImpl.java:803) at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(PlatformImpl.java:484) at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:457) at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:456) at javafx.graphics/com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96) at javafx.graphics/com.sun.glass.ui.win.WinApplication._runLoop(Native Method) at javafx.graphics/com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:184) ... 1 more

2023-05-24 上传

Exception in Application constructor Exception in thread "main" java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:893) Caused by: java.lang.RuntimeException: Unable to construct Application instance: class Main at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:907) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$1(LauncherImpl.java:182) at java.lang.Thread.run(Thread.java:750) Caused by: java.lang.NoSuchMethodException: Main.<init>() at java.lang.Class.getConstructor0(Class.java:3110) at java.lang.Class.getConstructor(Class.java:1853) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$7(LauncherImpl.java:818) at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$7(PlatformImpl.java:326) at com.sun.javafx.application.PlatformImpl.lambda$null$5(PlatformImpl.java:295) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.application.PlatformImpl.lambda$runLater$6(PlatformImpl.java:294) at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) at com.sun.glass.ui.win.WinApplication.lambda$null$3(WinApplication.java:177) ... 1 more出现这个报错怎么解决

2023-05-26 上传