【问题标题】:JavaFX Eclipse suggestion to import not presentJavaFX Eclipse 建议导入不存在
【发布时间】:2021-09-12 18:54:16
【问题描述】:

我刚开始使用 JavaFX,出于某种原因,Eclipse 不建议导入 JavaFX 内容,因此我必须手动输入。示例:javafx.scene.Group 我在 Group 中输入了一种类型,它建议了其他内容,例如 javax.swing.GroupLayout.Group image of suggestions

我不太确定,但我认为 JavaFX 库在 Modulepath 下而不是 Classpath 下的事实可能与此有关,但它只有在 Modulepath 下才有效。

非常感谢您的帮助,谢谢!

【问题讨论】:

  • 如果您按照建议将requires javafx.graphics 添加到模块信息会发生什么?无论如何,我们需要更多细节,f.i.模块信息的内容:)

标签: java eclipse javafx efxclipse


【解决方案1】:

我正在重写这个答案,正如@kleopatra 指出的那样不准确

要使建议生效,您需要在项目的构建路径中包含 JavaFX。

如果您在 Eclipse 中创建了一个普通的 Java 项目,并且在它的源路径根目录下有一个 module-info.java,那么您需要将所有需要的 jar 添加到模块路径中:

  • JavaFX SDK 应该已经安装在你的系统上,或者从Gluon 下载并解压
  • 右键单击您的 Java 项目,进入 Build Path -> Configure Build Path...
  • 转到 Libraries 选项卡,指向 Modulepath 部分
  • 点击 [Add External JARs...] 按钮,从 JavaFX SDK 中选择所有 jars,点击 [Apply and close]

然后建议应该按预期工作,imports 将自动插入到您的 java 文件的顶部,但是当您第一次从给定库模块导入任何内容时,它们会出现错误,因为该模块还必须在你的 module-info.java 中是必需的。您可以在悬停import 时通过快速修复(“将'需要 javafx.something' 添加到 module-info.java”)自动执行此操作。

现在有一种更直接的方法可以在 Eclipse 中创建 JavaFX 模块化项目,使用 Maven

  • 创建一个新的 Maven 项目
  • 检查并通过第一个向导屏幕
  • 选择原型org.openjfx:javafx-archetype-fxml
  • 在下一个屏幕上,您可以选择您选择的 JavaFX 版本(目前默认为 13)

向导终止后,您已经建立了一个漂亮的小项目,其中包含一个应用程序窗口和两个 FXML 示例显示。您可以从那里开始构建您自己的项目。

【讨论】:

  • 添加requires javafx.graphics; 在放入模块信息时起作用。谢谢!
猜你喜欢
  • 2020-12-23
  • 1970-01-01
  • 1970-01-01
  • 2016-02-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-20
  • 2020-11-17
相关资源
最近更新 更多