问题标签 [openjfx]
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.
intellij-idea - 如何在 Intellij Idea 上启动 openjfx 11 应用程序?
我正在使用带有 java 11 的 openjfx 11。
如果我用 mvn 启动应用程序,它工作正常。我添加了这些依赖项:
但如果我在 Intellij Idea (2018.2) 中运行,它会给我:
IntelliJ 想法将罐子添加到类路径中。
java - 如何为 Openjdk 11 和 Openjfx 11 应用程序构建工件?(智能思想)
我实际上是 openjfx 11 的新手,我已经尝试使用 openjdk 和 openjfx 库在 intellij IDEA 中编译我的项目。但是在我为我的项目构建工件之后,我的项目的 jar 文件没有执行。
我尝试使用 cmd 执行它并看到此错误:
错误:缺少 JavaFX 运行时组件,需要运行此应用程序
已经搜索了很多论坛,但是我没有看到针对此特定问题的解决方案。
提前致谢!
maven - 在 OSGi 应用程序中使用 Openjfx 11 类
有谁知道是否有办法在 Eclipse 工作区中使用 JavaFX 模块?我有一个 OSGi-maven 多模块应用程序。
到目前为止,我已经尝试了几件事。
- 下载 JavaFX SDK 并在 Eclipse 中添加 jars 作为用户定义的库。
- 捆绑 JavaFX jar 并在之后将它们用作常规 OSGi 捆绑包(作为依赖项添加,之后在目标平台中添加)。
这两件事都有效。但是,在第一种情况下,每个开发人员都必须手动将这些 jar 作为库添加到类路径中。第二,对于每个平台,我们必须为每个模块提供不同的捆绑包。
如果我不做这些事情,我就会编译错误,无法找到 JavaFX 类(如预期的那样)。
有没有第三种方法可以做到这一点?通过使用一些 OSGi 功能或类似的东西?我还没有找到在 MANIFEST.MF 中添加模块的任何方法。这甚至可能吗?
我在 OSGi 框架启动器中添加了 JavaFX 模块作为 VM 参数,一切正常。但是我必须做之前提到的其中一件事情,这样我就不会出现编译错误。虚拟机参数:--module-path /path/to/javafx/sdk/11/lib --add-modules javafx.controls,javafx.graphics,javafx.base
java - IntelliJ IDEA 2018.2、openjdk 11 和 openjfx 11(没有 maven,不是模块化项目):找不到模块 javafx.controls
我刚刚在 intelliJ 中使用 openjdk 11 创建了一个新的 JavaFX 项目,并且我已经在他们的网站上下载了最后一个 openjfx 库。
这是我所做的:
我已添加到运行/调试 VM 选项:--module-path %PATH_TO_FX% --add-modules=javafx.controls,javafx.fxml
VM 选项
我添加了一个新变量 env PATH_TO_FX :PATH_TO_FX=%programfiles%\Java\javafx-sdk-11\lib
所以它编译得很好,但在运行时失败:
有谁知道我在这里想念什么?
PS:我已经关注了这个链接https://openjfx.io/openjfx-docs/#install-javafx
编辑 :
我应该在这里有 onpenjfx 库吗?类路径
java - OpenJFX 跨平台兼容性
因此,随着 Java 11 摆脱 JavaFX,我将不得不切换到 OpenJFX,但是我仍然不确定如何让人们只下载我的应用程序并让它开箱即用。现在我有人在 Mac、Linux 和 Windows 上使用它,我很乐意继续提供这种支持,而不要求他们安装或下载任何东西。
有什么方法可以将 OpenJFX 与我的 jar 一起发布,尤其是允许它跨平台兼容?
任何帮助表示赞赏
java - jar 文件的自动模块 VM 选项
因此,我目前正在研究 Java 11 中的新变化以及外部 OpenJFX SDK。
但是,我想分发一个 jar 文件并让用户自己下载所需的 SDK 并将其放入与我的 jar 相同的文件夹内的预定义文件夹中会容易得多。
现在我问自己是否可以在启动我的 jar 时自动添加所需的 VM 选项,而无需我的程序的用户使用给定的参数从控制台启动它。
在我的情况下,这些参数看起来像这样:"--module-path=D:\Path\JavaFX\lib" --add-modules=javafx.controls,javafx.fxml,javafx.base,javafx.media,javafx.graphics,javafx.swing,javafx.web
有没有办法让我加载这些模块而不要求用户做更多的事情,而不是下载 SDk 并将其复制到文件夹中?我考虑为用户提供每个操作系统的启动脚本,但这也比启动 jar 更复杂。
感谢您提供任何帮助,我希望没有人问过这个问题,因为我无法找到任何东西。
java - 使用 OpenJDK 10 的 Gradle JavaFX 项目
我有工作 Gradle/JavaFX 项目。它可以在 JDK8 上正常工作,但现在我切换到 OpenJDK 10,而且我的 IDE (Eclipse) 不知道任何 JavaFX 类。在 Maven 存储库中,我找到了OpenJFX。我尝试将依赖项添加到我的 build.gradle 文件并重建项目,但仍然没有 Eclipse 可以理解的 JavaFx 类。将 JavaFX 依赖项添加到我的项目的正确方法是什么,为什么在 Gradle 中实现 OpenJFX 对我没有帮助?
java - 有关 OpenJDK 11 和 OpenJFX 11(和 Proguard)的迁移问题
我们目前正在将 Java 应用程序从 Oracle JDK 8(由 JNLP 交付的应用程序代码)迁移到 OpenJDK 11(作为可运行的应用程序代码与 Java 运行时一起交付)。尽管我们在测试环境中或多或少地找到了一个可行的解决方案,但我们仍然存在以下问题:
我们的应用程序需要 JavaFX,我们希望使用 jlink 进行构建。是否建议使用https://gluonhq.com/products/javafx上提供的 OpenJFX jmods来使用 OpenJDK 构建适当的 jlink 映像,还是有其他选择?
OpenJFX jmods 似乎目前仅在 gluonhq 上的版本 11(为 JDK 11 编译)中正式提供,而 Proguard 混淆仅适用于为 JDK 编译的代码,直到版本 10(请参阅https://sourceforge.net/p/proguard/feature -请求/188/)。不确定 Proguard 何时也支持版本 11。我们应该等到它发生,还是我们有什么选择?下载和构建针对版本 10 的 OpenJFX 源(我不知道这是否可能开箱即用),或者甚至保留 Oracle 10 JDK 二进制文件和/或其 javafx jmod 文件是一个不错的选择吗?只要 Proguard 不懂 OpenJDK 11 代码?
我们正在进一步寻找一种工具来为 Windows 和 MacOS 创建用户友好的可运行文件(例如,无需修改注册表的自解压可执行文件)。javapackager 现在似乎不可用(http://openjdk.java.net/jeps/343计划用于 OpenJDK 12)并且既不支持交叉编译也不支持自动更新机制。因此,我们正在寻找一种工具,它可以做到 a) 自动更新(在启动时动态加载应用程序代码或新的 jlink 图像)和 b) 为 Windows 和 MacOS 构建可运行文件。有没有什么好工具支持类似于 Oracle 的 JNLP 启动器的自动更新机制,可以在生产环境中使用?
对于 JNLP,我们应用代码签名。是否仍然建议并且可以签署 a) 我们位于 jlink 图像中的应用程序代码和 b) 动态加载的应用程序代码,两者都是使用 JDK11+ 构建的?
谢谢你的帮助,彼得。
java - openjfx 1.8 不包含 javafx.fxml 包
我刚刚在我的系统上安装了 openjdk 1.8 和 openjfx,还将 jfxrt.jar 添加到类路径中。我可以使用 now javafx.scene
、javafx.stage
等。但由于某种原因,我的 jfxrt 不包含javafx.fxml
包。可能是我想在我的类路径中添加一些库还是别的什么?
此刻我的类路径看起来像:
/usr/lib/jvm/java-1.8.0-openjdk/jre/lib/charsets.jar
/usr/lib/jvm/java-1.8.0-openjdk/jre/lib/jce.jar
/usr/lib/jvm/java-1.8.0-openjdk/jre/lib/jsse.jar
/usr/lib/jvm/java-1.8.0-openjdk/jre/lib/management-agent.jar
/usr/lib/jvm/java-1.8.0-openjdk/jre/lib/rt.jar
/usr/lib/jvm/java-1.8.0-openjdk/jre/lib/resources.jar
/usr/lib/jvm/java-1.8.0-openjdk/jre/lib/ext/cldrdata.jar
/usr/lib/jvm/java-1.8.0-openjdk/jre/lib/ext/dnsns.jar
/usr/lib/jvm/java-1.8.0-openjdk/jre/lib/ext/jaccess.jar
/usr/lib/jvm/java-1.8.0-openjdk/jre/lib/ext/localedata.jar
/usr/lib/jvm/java-1.8.0-openjdk/jre/lib/ext/nashorn.jar
/usr/lib/jvm/java-1.8.0-openjdk/jre/lib/ext/sunec.jar
/usr/lib/jvm/java-1.8.0-openjdk/jre/lib/ext/sunjce_provider.jar
/usr/lib/jvm/java-1.8.0-openjdk/jre/lib/ext/sunpkcs11.jar
/usr/lib/jvm/java-1.8.0-openjdk/jre/lib/ext/zipfs.jar
/usr/lib/jvm/openjfx/rt/lib/ext/jfxrt.jar