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

Maven 3.6.3+Lombok 1.18.30配合Java 17构建异常求助

Maven构建报错:Unable to load cache item 解决方案

报错信息

$ mvn clean package
[ERROR] Error executing Maven.
[ERROR] java.lang.IllegalStateException: Unable to load cache item
[ERROR] Caused by: Unable to load cache item
[ERROR] Caused by: Could not initialize class com.google.inject.internal.cglib.core.$MethodWrapper
[ERROR] Caused by: Exception com.google.inject.internal.cglib.core.$CodeGenerationException: java.lang.reflect.InaccessibleObjectException-->Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @2d127a61 [in thread "main"]

环境说明

  • 使用版本:Maven 3.6.3、Lombok 1.18.30
  • 异常现象:命令行执行mvn clean package报错,但IntelliJ IDEA基于openjdk-17-jdk可正常构建运行

解决方案

1. 升级Maven版本

Maven 3.6.3对JDK 17的兼容性不足,其内置的Guice版本未适配JDK 17的模块访问控制规则。建议直接升级到Maven 3.8.6及以上版本(该系列版本已完成JDK 17适配),升级后重新执行构建命令即可。

2. 临时适配(不升级Maven)

若暂时无法升级Maven,可在执行构建命令时添加JVM参数,开放模块访问权限:

mvn clean package --add-opens java.base/java.lang=ALL-UNNAMED

该参数允许Maven相关依赖所属的未命名模块访问java.lang模块的内部API,绕过JDK 17的模块限制。

3. 检查Lombok配置(可选)

虽然IDEA构建正常,仍需确保项目中Lombok的Maven插件配置正确,避免版本冲突:

<plugin>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok-maven-plugin</artifactId>
    <version>1.18.30.0</version>
    <executions>
        <execution>
            <phase>generate-sources</phase>
            <goals>
                <goal>delombok</goal>
            </goals>
        </execution>
    </executions>
</plugin>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 13:41:01