问题标签 [gluonfx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javafx - (Gluon)Raspi 上的 JavaFX17/18(使用桌面)由于 libglass.so 未运行:未定义符号 g_direct_hash
我一直在尝试在我的树莓派 pi4 上从 Gluon 安装/运行 JavaFX18 并收到以下错误消息:
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 的线程“主”java.lang.reflect.InvocationTargetException 中的异常
(...编辑...)
引起:java.lang.UnsatisfiedLinkError:/opt/javafx-sdk-18/lib/libglass.so:/opt/javafx-sdk-18/lib/libglass.so:未定义符号:g_direct_hash
这是我的配置:
- Java:Linux/arm32 jdk-17.0.1+12
- JavaFx:Linux/arm32 openjfx-18-ea+7(也试过 17.0.1 和 17.0.2)
我正在使用简单的 HelloFX 示例 ( https://github.com/openjfx/samples ) 遵循 Gluon 文档 ( https://docs.gluonhq.com/#platforms_embedded ) 的说明。以下是我在我的 pi 上的 HelloFX 目录(src 所在的位置)中执行的命令:
- sudo /opt/jdk-17.0.1+12/bin/javac -verbose --module-path=/opt/javafx-sdk-18/lib --add-modules=javafx.controls src/hellofx/HelloFX.java - d 距离
- sudo /opt/jdk-17.0.1+12/bin/java -Dglass.platform=gtk -Djava.library.path=/usr/java/packages/lib:/lib:/usr/lib:/opt/javafx- sdk-18/lib --module-path=/opt/javafx-sdk-18/lib --add-modules=javafx.controls -cp dist/。hellofx.HelloFX
[注意这是在 X11 上运行,而不是在 Kiosk/CLI 模式下;Gluon 文档还展示了如何使用 DRM..etc 在非桌面模式下运行相同的示例:我已经尝试过这个并且工作正常;我还没有尝试过 64b 变体]
有没有人偶然发现这个问题并能够解决?
java - 使用 gluonfx 编译的故障程序:build
我在 Windows 下通过 GluonFX 编译了我的 JAVA 程序,以获得本地语言版本。程序运行时,我收到各种错误消息,例如: java.lang.NoSuchMathodException: java.lang.Math.sin (double)
当我运行 mvn gluonfx 时,以下是其他错误:nativerun
[lun nov 29 09:39:00 CET 2021][INFO] ===================== 运行任务============= ======= [lun nov 29 09:39:00 CET 2021][FINE] 运行到结束的 PB 命令:C:\Gluon\MathPlaceTest\target\gluonfx\x86_64-windows\MathPlaceTest.exe [lun nov 2021 年 11 月 29 日 09:39:00 CET][FINE] 开始进程运行直到结束... [2021 年 11 月 29 日 09:39:01 CET][INFO] [SUB] 主要 [2021 年 11 月 29 日 09:39:01 CET ][INFO] [SUB] 2021 年 11 月 29 日上午 9:39:01 com.sun.javafx.application.PlatformImpl 启动 [lun nov 29 09:39:01 CET 2021][INFO] [SUB] 警告:不支持的 JavaFX 配置:类是从“未命名的模块@1729ec00”[lun nov 29 09:40:58 CET 2021][INFO][SUB] 线程“JavaFX 应用程序线程”中的异常 java.lang.AssertionError:java.lang.ClassNotFoundException:javafx .scene.shape.Polyline
[lun nov 29 09:44:45 CET 2021][INFO] [SUB] java.lang.ClassNotFoundException: com.sun.prism.shader.Solid_TextureRGB_AlphaTest_Loader
[lun nov 29 09:44:46 CET 2021][INFO] [SUB] java.lang.InternalError:加载库存着色器 Solid_TextureRGB_AlphaTest 时出错 [lun nov 29 10:41:36 CET 2021][INFO] [SUB] 警告:不支持JavaFX 配置:类是从“未命名模块 @6d074b14”加载的 [lun nov 29 10:41:48 CET 2021][INFO] [SUB] java.lang.ClassNotFoundException: com.sun.prism.shader.Solid_TextureRGB_AlphaTest_Loader
另一个问题:第二个窗口打开,但它是白色的。我认为我在此处报告的 pom.xml 文件中存在错误或缺失。我寻求帮助
javafx - FileChooser 对话框导致本机应用程序中出现分段错误核心转储
我的本机 JavaFX 应用程序中的文件选择器对话框出现问题。我使用 gluon maven 插件进行本机编译。我决定试试胶子样品。我克隆了样本并本地编译了HelloFXML
样本(使用graalvm 21.0.0.2
),它可以工作。此后,我在HelloFXML
控制器内的操作代码中添加了一个简单的文件选择器对话框:
现在文件选择器对话框会导致分段错误。我试过 ubuntu 20.04 和 21.10。两者都失败了。我不知道为什么会发生这种情况,也不知道该怎么办。有什么建议么?请帮忙。
编辑: mvn gluonfx:runagent 的输出:
运行应用程序时的输出:
来自 gdb 的输出:
java - Package#getImplementationVersion() 使用本机映像返回 null (GraalVM/GluonFX)
我有一个基于 JavaFX 的桌面应用程序,我通过 GraalVM/GluonFX 创建本机图像。为了在运行时检索应用程序的版本,我之前 - 当应用程序只有一个胖 JAR 时 - 使用了Package#getImplementationVersion()
. 但是,这会返回null
。
我认为这是因为我没有正确设置清单条目?我的配置gluonfx-maven-plugin
:
有没有办法配置插件以Package#getImplementationVersion()
返回应用程序的版本?我无法在相应的文档中找到某些内容。此外,GraalVM 中的一个相关问题已在 2020 年得到解决。
java - JavaFX 应用程序在使用 LauncherImpl 代替 Application 时编译不好
我有一个使用 GluonFx 插件编译为本机的 JavaFX 应用程序。我想添加一个预加载器以在启动时显示。我通过更改初始化来管理它:
Application.launch(MainView.class, args)
到LauncherImpl.launchApplication(MainView.class, MyPreloader.class, args)
编译过程执行到最后没有错误,但应用程序无法启动。如果我尝试运行代理 (mvn gluonfx:runagent) 我有以下错误:
cannot access class com.sun.javafx.application.LauncherImpl (in module javafx.graphics) because module javafx.graphics does not export com.sun.javafx.application to unnamed module
有人知道如何解决这个问题,或者我可以使用什么其他方式来加载我的预加载器?
PS:从IDE运行。问题是编译为本机后
提前致谢
android - 在运行时打印 Okhttp 版本
在我们的javafx移动应用程序中,我们使用Okhttp3 4.9.1来处理 http 请求。我们的一位开发人员告诉我,即使我们将 Okhttp 指定为外部依赖项,在 android 设备中它也只会使用与 android 捆绑的 Okhttp。所以我只是想验证它并尝试像这样在运行时打印 okhttp 版本。它不起作用(ClassNotFoundExceptions)。所以,我的问题是,
- javafx 移动应用程序使用“与 android 捆绑的 okhttp ”还是我们指定为依赖项的应用程序?
- 如何在 javafx 移动应用程序中获取与 android 捆绑的“okhttp”版本?
javafx - 使用 ./mvnw -Pios gluonfx:link 和 nativerun 解开 iOS 部署
尝试解决此错误,将从 start.gluon.io 生成的小型示例应用程序部署到从 macOS 10.15.7 运行 iOS 15.2 的附加 iPad
虚拟 Xcode 应用程序已签名并部署到附加的 iPad 上,但必须为 Xcode 12 的签名配置指定额外的 --generate-entitlement-der。
我按照https://docs.gluonhq.com/#_build_your_application118的说明进行操作。使用我的苹果开发人员帐户配置文件为捆绑 ID 编辑 Plist 并遇到上述错误。文档说在 GluonFX 插件中添加 <verbose>true</verbose> 会有所帮助,所以我添加到插件工件的 <configuration> 并重新运行 ./mvnw gluonfx:link 和 nativerun 似乎都没有记录任何其他消息。
请从这里开始有什么想法,或者让构建更详细以检查它是否选择了正确的配置文件或其他线索,一旦.app被复制到iPad,如何通过验证?
javafx - 在使用 GluonFx 编译的程序中显示图标
我使用 gluonFx 作为本机 Windows 映像编译了我的 JavaFx 程序,一切正常,除了在 Windows 资源管理器中显示文件名时程序图标不出现,而在程序运行时显示。如何使图标出现在程序名称旁边?
java - 使用 GluonFX 插件构建 Javafx 应用程序的签名 APK
我正在使用来自 gluon -samples 存储库的HelloFX项目。我使用了一个密钥库(它是为不同的项目生成的)并尝试构建这个应用程序的 APK。
COMPILE TASK和LINK TASK成功完成。但是PACKAGE TASK失败并显示以下日志消息。
完整的日志可以在这里找到。
以下是pom.xml文件。
以下是AndroidManifest文件:-
为什么会出现此问题以及如何解决此问题?
还有一个疑问,当前版本的 gluonfx 插件在构建 APK 时是使用/target文件夹下的文件还是实际项目下的文件?
java - 使用 GluonhqConnect.Provider.RestClient 查询 ElasticSearch 正文
我正在尝试使用com.gluonhq.connect.provider.RestClient来查询启用了 Elastic Search 的 API。
我尝试使用以下方法发出请求:
...其中 dataString 是一个 json 格式的字符串,表示请求的主体(我可以假设请求的格式正确,因为我在 Postman 中对其进行了测试并且请求返回了预期的数据)。如果有帮助,这里是弹性搜索请求正文:
我遇到的问题是(胶子) RestClient 以及扩展的 DataProvider.retrieveObject 方法完全返回......什么都没有。
我很确定我做错了什么,并且我相当确定它是 .dataString() 方法(它需要一个“实体”),但我还没有找到一种替代方法来用作传递正文的方法进入请求。
使用com.gluonhq.connect库背后的原因是为了避免也必须创建我自己的 Observable 列表(手动)——如果数据格式合适......并且存在,库会自动吐出一个。至少,这是我对它的理解。
有人可以指出我正确的方向吗?我没有发现有关如何使用该库执行 POST 请求的指示或解释。
更新 20220117
主.java
RestObjectView.java
}