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

求助:安装JDK21与NetBeans21后Maven编译报错invalid target release:21.0.2

解决Maven编译报错"invalid target release:21.0.2"的方案

问题核心

你遇到的报错是因为maven-compiler-plugin 3.5.1版本过于老旧,它不支持JDK 21的版本号格式(带小版本号的21.0.2),也无法完全兼容JDK 21的编译规范。

具体解决步骤

1. 升级maven-compiler-plugin到支持JDK 21的版本

在项目的pom.xml中,更新插件版本到3.11.0及以上(推荐使用最新稳定版),同时明确指定编译的JDK版本:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <!-- 替换为支持JDK21的版本,示例用3.11.0 -->
            <version>3.11.0</version>
            <configuration>
                <source>21</source>
                <target>21</target>
                <!-- 可选:用release参数统一编译版本,避免版本号格式问题 -->
                <release>21</release>
            </configuration>
        </plugin>
    </plugins>
</build>

2. 若暂时不想升级插件,修正版本号格式

旧版本插件仅识别整数形式的JDK版本号,把pom.xml中编译配置的版本号改成21而非21.0.2:

<configuration>
    <source>21</source>
    <target>21</target>
</configuration>

3. 确认NetBeans项目的JDK配置

  • 右键项目 → 选择「属性」
  • 进入「构建」→「编译」选项卡
  • 确保「Java平台」选择的是已安装的JDK 21,而非其他版本

4. 验证Maven使用的JDK版本

打开终端执行:

mvn -v

查看输出中的Java version是否为21。如果不是,说明NetBeans使用的Maven实例绑定了其他JDK,需要调整:

  • 打开NetBeans的「工具」→「选项」
  • 进入「Java」→「Maven」选项卡
  • 在「执行环境」中选择绑定JDK 21的环境

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 02:42:17