You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Gradle Kotlin DSL为Java编译器传递--add-exports参数并解决报错

问题修复方案

错误原因

你的配置存在两处引发报错的问题:

  • 将--add-exports选项和它的参数值合并为了同一个字符串,javac解析时会将整段内容识别为单个非法标记
  • 字符串末尾多了冗余空格,进一步加剧了参数解析错误

正确配置(Gradle Kotlin DSL)

写法1:拆分参数传入(推荐,兼容性最好)

将选项和参数值作为两个独立元素传入参数列表:

tasks.withType<JavaCompile> {
    options.compilerArgs.addAll(listOf(
        "--add-exports",
        "java.rmi/sun.rmi.server=ALL-UNNAMED"
    ))
}

写法2:单字符串拼接等号

如果要写为单个参数,需要用等号连接选项和值,且不能加多余空格:

tasks.withType<JavaCompile> {
    options.compilerArgs.add("--add-exports=java.rmi/sun.rmi.server=ALL-UNNAMED")
}

验证

修改配置后重新执行gradle compileJava任务即可正常编译。

内容的提问来源于stack exchange,提问作者user51

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 04:39:00