Eclipse/Java 9:如何让 e(fx)clipse 3.7.0 工作?

Eclipse/Java 9: How to get e(fx)clipse 3.7.0 to work?

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

这是我要遵循的说明:

Installing JavaFX If you have the latest version of Eclipse installed on your machine:

  1. In Eclipse, go to Help, Eclipse MarketPlace
  2. Search for “javafx” in the “Find” bar
  3. Click on “install” next to the “e(fx)clipse 3.7.0
  4. If a message pops up indicating an error, it is because you have other packages which will be overridden – this is OK, confirm these updates.
  5. Restart Eclipse when prompted

Creating a JavaFX Project In Eclipse, New > Project > JavaFX > JavaFX Project

现在,我已经执行了上述所有步骤,但由于以下错误,默认 Main.java 无法编译并且 运行 我无法执行任何操作:

Error occurred during initialization of boot layer java.lang.module.FindException: Module javafx.controls not found

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

我用谷歌搜索并遵循了 Stack Overflow 和其他资源中的其他指令集,但它们几乎都涉及 Java SE 11 及更高版本,我们需要使用 Java SE 9.

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

我看到另一组说明说要在 JRE 下为 Java 9 编辑 isModular 设置,但是当我在源模块下输入“javafx.controls”以添加导出时,它告诉我“模块‘javafx.controls”不是由这个构建路径条目提供的。

感谢所有试图提供帮助的人,我能够让它工作,所以我会 post 为可能 运行 遇到这种罕见情况的其他人提供解决方案。

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"