我有一个据称无法解决的问题,所以我很想找到答案。
我有最新版本的NetBeans 7.4,在完全更新的Fedora 20 x64上运行。正式来说,这可以与JavaFX一起使用。期。我有来自repo(1.7.something)的JDK和我能找到的最新版本(1.8.0)。正式地说,这些都有JavaFX。周期。
如果我尝试创建一个新的JavaFX项目,可以这样说:
好吧,我已经习惯了困惑的事情,我想我可以解决这个问题。去创建一个新平台,并且...没有“JavaFX”选项卡。甚至花了一些研究来找出它所谈论的内容,并且在这个过程中我发现该标签实际上已经从7.4中删除了。因为NetBeans 7.4绝对可以自动识别JavaFX。周期。无法自动建立一个JavaFX平台。 请到平台管理器,创建一个非默认Java SE平台,然后去JavaFX的标签, 启用JavaFX和在路径有效的JavaFX SDK和JavaFX运行时填写。 注:JavaFX的SDK可以从JavaFX的网站上下载
去实际的JavaFX网站告诉我,正如预期的那样,它与我已经拥有的Java SE 7 JDK捆绑在一起。周期。
由于最终结果我可以通过将一个JavaFX组件集成到我的Swing应用程序中来实现,但我尝试了,但NetBeans仍然无法找到与JavaFX相关的任何内容,因此如果我尝试导入这样的内容,就会对我大喊大叫一件事。
所以,鉴于本来应该只是简单明了的事情不是......我可以从哪里去?
答案 0 :(得分:8)
目前在Debian和Ubuntu(可能还有其他)中,JavaFX是一个独立于OpenJDK(openjdk-8-jdk)的软件包,因此需要安装:
sudo apt-get install libopenjfx-java libopenjfx-java-doc
值得注意的问题(此问题不影响Maven,JavaFX应用程序,因此如果这是您首选的构建方法,则忽略以下问题):
如果您尝试创建新项目: 分类> JavaFX的 项目> JavaFXApplication
你会得到:
Internal error. Missing resources [/resources/web-files/javafx-loading-100x100.gif]
/home/ken/NetBeansProjects/vestFxReports/nbproject/jfx-impl.xml:1465: The following error occurred while executing this line:
/home/ken/NetBeansProjects/vestFxReports/nbproject/jfx-impl.xml:3093: The following error occurred while executing this line:
/home/ken/NetBeansProjects/vestFxReports/nbproject/jfx-impl.xml:2055: Error: -includedt requires the java deployment toolkit, which is not included in this distribution
BUILD FAILED (total time: 1 second)
修复上述错误[以下步骤来自此处:http://hongouru.blogspot.com.uy/2015/09/solved-error-building-new-project-using.html]:
javafx.deploy.includeDT=true
行并将 true 更改为 false 。现在,您可以在OpenJDK上创建和运行JavaFX应用程序。
后续步骤,虽然超出了手头的问题,但您可能希望下载JavaFX场景构建器:http://www.oracle.com/technetwork/java/javafxscenebuilder-1x-archive-2199384.html
答案 1 :(得分:1)
显然,问题确实是大多数Linux发行版提供的开源OpenJDK与专有的Oracle JDK之间的差异。具有讽刺意味的是,这是一个众所周知的问题,但你必须专门搜索才能找到它,到那时你已经知道了。
解决方案是下载官方Oracle JDK,并在必要时在NetBeans中创建匹配平台(此时位于/usr/java/jdk...
下)。之后它应该完美无缺。
答案 2 :(得分:0)