我有一个Java FX项目,并使用以下带有JavaFX的OpenJDK的Azul Zulu版本将该项目升级到JDK17
https://www.azul.com/downloads/?os=windows&package=jdk-fx
有谁知道为什么Intellij无法从Azul Zulu Builds的OpenJDK with FX中找到使用JDK17的JavaFX包?
发布于 2021-10-19 18:28:00
我提供两种解决方案:
使用Azul发行版的
使用不包含JavaFX的Azul发行版的
我推荐使用构建工具的解决方案2。它的设置速度更快,而且对于未来的开发工作来说,它是一种更可移植、更灵活和更具可扩展性的方法。
替代JDK
这些说明同样适用于其他JDK和JavaFX发行版,比如由Belsoft Liberica、Amazon Correto和Eclipse Temurin打包的发行版。
要使用JDK的备用供应商,请选择从所选供应商下载适当的版本,或者:
使用下面列出的添加JDK选项手动下载
解决方案1:通过内置JavaFX模块使用Azul发行版
下载Azul JDK:
- [https://www.azul.com/downloads/?version=java-17-lts&os=macos&package=jdk-fx](https://www.azul.com/downloads/?version=java-17-lts&os=macos&package=jdk-fx)Create a Java project (不是新的JavaFX项目):
创建一个JavaFX HelloWorld.java类:
click on >右键单击Application.,然后选择| JavaFX
导入javafx.application.Application;导入javafx.scene.Scene;导入javafx.scene.control.Button;导入javafx.stage.Stage;公共类HelloWorld扩展应用{ public static void (String[] args) { launch(args);} @Override public void (Stage primaryStage) {primaryStage.setScene(新场景(新按钮(“hello,world”);primaryStage.show();} }
Run the new JavaFX application in the IDE using Azul JDK + JavaFX runtime
故障排除
如果您执行上述操作,但找不到JavaFX类,那么您可能没有使用包含JavaFX的JDK。
在这种情况下,除非您将JDK版本更改为包含JavaFX的版本,否则您应该从openjfx.io下载JavaFX SDK,并遵循那里提供的Idea项目设置信息。
解决方案2:使用Azul,但是从Maven Central源码JavaFX模块
下面的解决方案是将Azul运行时与JavaFX模块一起使用,这些模块来自使用Maven的Maven Central Repository。
Download and use Azul JDK in your project
祖鲁文件|项目结构|项目开发工具包|下载JDK...
如果您想要使用Azul下载和添加步骤,而不是IDE设置中用于新Java项目的缺省JDK,则只需执行Azul下载和添加步骤。
Run the new JavaFX application in the IDE using Azul JDK runtime and maven JavaFX modules
https://stackoverflow.com/questions/69633235
复制相似问题