【问题标题】:Eclipse/Java 9: How to get e(fx)clipse 3.7.0 to work?Eclipse/Java 9:如何让 e(fx)clipse 3.7.0 工作?
【发布时间】:2021-11-15 10:24:40
【问题描述】:

前言:我已经安装了最新版本的 Eclipse,并且一直在使用它没有问题。我现在遇到了问题,因为我们应该在未来的项目中实现 JavaFX。

以下是我得到的指示:

安装 JavaFX 如果您安装了最新版本的 Eclipse 在你的机器上:

  1. 在 Eclipse 中,转到帮助、Eclipse MarketPlace
  2. 在“查找”栏中搜索“javafx”
  3. 点击“e(fx)clipse 3.7.0”旁边的“安装”
  4. 如果弹出一条提示错误的消息,那是因为您还有其他将被覆盖的包 - 没关系,请确认这些 更新。
  5. 出现提示时重新启动 Eclipse

在 Eclipse 中创建 JavaFX 项目,新建 > 项目 > JavaFX > JavaFX 项目

现在,我已按照上述所有步骤操作,但由于以下错误,默认 Main.java 无法编译和运行,因此我无法执行任何操作:

启动层初始化时出错 java.lang.module.FindException:找不到模块 javafx.controls

现在,代码中有很多红色下划线,我很确定这与 JavaFX 库不可用有关。

我在 Google 上搜索并遵循了 Stack Overflow 和其他资源中的其他说明集,但它们几乎都与 Java SE 11 及更高版本有关,并且我们需要使用 Java SE 9。

这是我当前的构建路径。虽然说明是指 Java SE 11,但我确实安装了一些 JavaFX .jar 文件并将它们上传到类路径下(目前没有图片,因为我在没有解决问题时删除了它们)。

我看到另一组指令说要在 Java 9 的 JRE 下编辑 isModular 设置,但是当我在源模块下键入“javafx.controls”以添加导出时,它告诉我“模块'javafx.controls " 不是此构建路径条目提供的。

【问题讨论】:

  • 如果 Java 9 是您的项目允许使用的最高版本,并且您很难找到支持它的开发环境,请改用 Java/JavaFX 8(如果允许)。与 Java 9 版本相比,IDE 更可能更好地支持版本 8。您遇到的问题与 Java/JavaFX 平台模块化有关,Java 8 中没有实现,因此切换到 Java 8 可能会解决您的问题。当然,如果必须是 Java 9 并且只有 Java 9,这个注释对你没有帮助。
  • 谢谢,感谢您的反馈,是的,如果我们可以回滚到 8 会容易得多。不幸的是,它没有。
  • 我建议您联系为您的项目设置需求的人,并请求更新需求以使用现代软件。
  • 我更喜欢切换到 jdk 8 或 11 及更高版本。如果不可能,请将其添加到 VM 选项中。 --module-path /path/to/JavaFX/lib --add-modules=javafx.controls

标签: java eclipse javafx


【解决方案1】:

感谢所有尝试提供帮助的人,我能够让它工作,因此我会为可能遇到这种罕见情况的其他人发布解决方案。

1. Install JDK 9.0.4 from Oracle.
2. Install Eclipse
3. Run Eclipse
4. Install e(fx)clipse 3.7.0
   - Click Help > Eclipse Marketplace
   - Search "JavaFX"
   - Click "Install" on e(fx)clipse 3.7.0
5. Install JDK 9.0.4 in Eclipse
   - Window > Preferences
   - Search "Installed"
   - Select "Installed JREs"
   - Click "Add"
   - Select "Standard VM"
   - Click "Directory" 
   - Find the JDK Folder, "jdk-9.0.4" and Select It 
   - Click "Select Folder" Click "Finish"
6. Create a new JavaFX Project
   - File > New > Project
   - JavaFX > JavaFX Project
   - Ensure JavaSE-9 is selected next to "Use an executed environment JRE:"
   - Click "Finish"
7. Configure Build Path
   - Right-click on Project
   - Build Path > Configure Build Path
   - Ensure Libraries is selected along the top row
   - Click JavaFX SDK under Modulepath
   - Click "Remove"
   - Click "Classpath"
   - Click "Add Libary..."
   - Select "JavaFX SDK"
   - Click "Next"
   - Click "Finish"
   - Select "JRE System Library [JavaSE-9]"
   - Click "Remove"
   - Click "Classpath"
   - Click "Add Library..."
   - Select "JRE System Library"
   - Select either "Execution Environment: "JavaSE-9 (jre-9.0.4)" OR "Workspace default JRE (jre-9.0.4)
   - Click Finish
8. Remove "Module-info.java"
   - Expand your Project Folders in the "Package Explorer"
   - Right-click on "Module-info.java"
   - Click "Delete"

【讨论】:

    猜你喜欢
    • 2019-01-05
    • 1970-01-01
    • 2019-06-09
    • 2016-07-06
    • 2019-03-31
    • 1970-01-01
    • 2013-10-25
    • 2014-05-05
    • 1970-01-01
    相关资源
    最近更新 更多