IntelliJ IDEA搭配OpenJDK24与JavaFX/OpenJFX运行报错:-source 8不支持模块系统
IntelliJ IDEA搭配OpenJDK24与JavaFX/OpenJFX运行报错:-source 8不支持模块系统
嗨,我来帮你快速解决这个问题~ 你遇到的报错本质是Maven编译配置和项目模块系统的版本冲突,下面是具体的排查和修复步骤:
问题根源
你项目里的module-info.java是Java 9+才支持的模块系统特性,但你的pom.xml中Maven编译插件强制指定了source和target为Java 8,这就直接触发了版本不兼容的报错。哪怕你本地没装Java 8,Maven会严格遵循配置来编译,所以才会出现这个提示。
修复步骤
1. 修正Maven编译插件配置(最关键)
打开你的pom.xml,找到maven-compiler-plugin节点,把<source>和<target>的值从8改成和你使用的OpenJDK24一致的版本,也可以用release参数统一指定(更推荐,避免源码和目标版本不一致的问题):
修改后的编译插件配置:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.13.0</version> <configuration> <!-- 替换成和你的OpenJDK版本一致的24 --> <source>24</source> <target>24</target> <!-- 可选:用release参数统一指定,更稳妥 --> <!-- <release>24</release> --> </configuration> </plugin>
2. 同步IntelliJ的项目语言级别配置
Maven配置修正后,需要确保IntelliJ的本地配置和Maven保持一致:
- 打开
File → Project Structure(快捷键Ctrl+Alt+Shift+S)- 进入
Project标签:确认Project SDK是OpenJDK24,Project language level选择24(或对应JDK版本的级别) - 进入
Modules → Sources标签:将Language level也设置为和Project一致的24
- 进入
- 打开
File → Settings → Build, Execution, Deployment → Build Tools → Maven → Runner:确认JRE选择的是OpenJDK24
3. 优化JavaFX依赖版本(避免潜在兼容问题)
你当前的JavaFX依赖版本是17.0.6,和你使用的OpenJFX24版本不匹配,建议同步升级到24,减少版本兼容风险:
<dependency> <groupId>org.openjfx</groupId> <artifactId>javafx-controls</artifactId> <version>24</version> </dependency> <dependency> <groupId>org.openjfx</groupId> <artifactId>javafx-fxml</artifactId> <version>24</version> </dependency>
最后操作
修改完所有配置后,点击IntelliJ右侧Maven面板的刷新按钮(🔄),让Maven重新加载配置,然后再尝试运行项目,应该就能正常启动了。
内容来源于stack exchange
相关产品推荐
相关产品推荐

