IntelliJ 2024.1.1运行Java 8项目报错:Unrecognized option: --add-opens
解决IntelliJ IDEA 2024.1.1运行Java 8项目时的
--add-opens报错问题 问题背景
使用IntelliJ IDEA 2024.1.1社区版运行Java 8项目时,启动阶段触发Unrecognized option: --add-opens错误,导致JVM无法启动。Maven构建安装过程正常,且已将项目JDK、系统JAVA_HOME均指向Java 8,更换低版本Maven后问题依然存在。该项目在旧版IntelliJ环境下可正常运行。
报错详情
Abnormal build process termination: "C:\Program Files\Java\jdk1.8.0_202\bin\java.exe" -Xmx700m -Djava.awt.headless=true "-Djna.boot.library.path=C:\Users\xx\AppData\Local\JetBrains\IntelliJ IDEA Community Edition 2024.1.1/lib/jna/amd64" -Djna.nosys=true -Djna.noclasspath=true --add-opens jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.jvm=ALL-UNNAMED -Dpreload.project.path=C:/Users/xx/Desktop/Files/intellijNewWorkspace/multichannelaccountsws -Dpreload.config.path=C:/Users/xx/AppData/Roaming/JetBrains/IdeaIC2024.1/options -Dexternal.project.config=C:\Users\xx\AppData\Local\JetBrains\IdeaIC2024.1\projects\multichannelaccountsws.6c161493\external_build_system -Dcompile.parallel=false -Drebuild.on.dependency.change=true -Didea.IntToIntBtree.page.size=32768 -Djdt.compiler.useSingleThread=true -Daether.connector.resumeDownloads=false -Dio.netty.initialSeedUniquifier=6462762080247829856 -Dfile.encoding=windows-1252 -Duser.language=fr -Duser.country=FR -Didea.paths.selector=IdeaIC2024.1 "-Didea.home.path=C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1" -Didea.config.path=C:/Users/xx/AppData/Roaming/JetBrains/IdeaIC2024.1 -Didea.plugins.path=C:/Users/xx/AppData/Roaming/JetBrains/IdeaIC2024.1/plugins -Djps.log.dir=C:/Users/xx/AppData/Local/JetBrains/IdeaIC2024.1/log/build-log "-Djps.fallback.jdk.home=C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/jbr" -Djps.fallback.jdk.version=17.0.10 -Dio.netty.noUnsafe=true -Djava.io.tmpdir=C:/Users/xx/AppData/Local/JetBrains/IdeaIC2024.1/compile-server/multichannelaccountsws_e2891c5c/_temp_ -Djps.backward.ref.index.builder=true "-Djps.kotlin.home=C:\Users\xx\AppData\Local\JetBrains\IntelliJ IDEA Community Edition 2024.1.1\plugins\Kotlin\kotlinc" -Dkotlin.incremental.compilation=true -Dkotlin.incremental.compilation.js=true -Dkotlin.daemon.enabled -Dkotlin.daemon.client.alive.path=\"C:\Users\xx~1.BAD\AppData\Local\Temp\kotlin-idea-12919414214725870895-is-running\" -Dide.propagate.context=false -classpath "C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/java/lib/jps-launcher.jar" org.jetbrains.jps.cmdline.Launcher "C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/java/lib/jps-builders.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/java/lib/jps-builders-6.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/java/lib/jps-javac-extension.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/lib/util-8.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/lib/util_rt.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/lib/platform-loader.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/lib/annotations.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/lib/trove.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/java/lib/jetbrains.kotlinx.metadata.jvm.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/lib/protobuf.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/lib/jps-model.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/java/lib/javac2.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/lib/forms_rt.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/lib/util.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/java/lib/aether-dependency-resolver.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/java/lib/maven-resolver-connector-basic.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/java/lib/maven-resolver-transport-file.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/java/lib/maven-resolver-transport-http.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/lib/idea_rt.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/Kotlin/lib/jps/kotlin-jps-plugin.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/lib/util-8.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/eclipse/lib/eclipse-jps.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/eclipse/lib/eclipse-common.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/platform-langInjection/lib/java-langInjection-jps.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/Groovy/lib/groovy-jps.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/Groovy/lib/groovy-constants-rt.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/javaFX/lib/javaFX-jps.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/javaFX/lib/javaFX-common.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/uiDesigner/lib/jps/java-guiForms-jps.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/maven/lib/maven-jps.jar;C:/Users/xx/AppData/Local/JetBrains/IntelliJ IDEA Community Edition 2024.1.1/plugins/gradle-java/lib/gradle-jps.jar" org.jetbrains.jps.cmdline.BuildMain 127.0.0.1 56654 4f28fb3d-4fd5-49d2-b3c0-e12c70eeb279 C:/Users/xx/AppData/Local/JetBrains/IdeaIC2024.1/compile-server Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit. Unrecognized option: --add-opens
解决方案
方案一:指定构建工具使用高版本JDK
--add-opens是Java 9及以上版本才支持的JVM参数,IntelliJ 2024.1.x的构建工具(JPS)默认会添加这些参数,因此需要让JPS运行在高版本JDK上,同时保持项目编译目标为Java 8:
- 打开
File > Project Structure > Platform Settings > SDKs,添加Java 11或17的SDK(可直接使用IntelliJ自带的JetBrains Runtime) - 进入
File > Settings > Build, Execution, Deployment > Build Tools > Maven > Runner,在JRE下拉菜单中选择刚才添加的高版本JDK - 检查
File > Settings > Build, Execution, Deployment > Compiler > Java Compiler,确保所有模块的Target bytecode version设置为1.8,项目级的Project bytecode version也设为1.8
方案二:移除IntelliJ的--add-opens JVM参数
直接删除IntelliJ启动时添加的不兼容参数:
- 打开
Help > Edit Custom VM Options - 找到所有以
--add-opens开头的行,删除这些行 - 重启IntelliJ IDEA
方案三:降级IntelliJ版本
如果上述方案无效,可将IntelliJ IDEA降级到2023.x及以前的版本,旧版本对Java 8项目的构建兼容性更好,不会默认添加这些高版本JVM参数。
内容的提问来源于stack exchange,提问作者user666
相关产品推荐
相关产品推荐

