当前位置: 首页 > news >正文

java: 警告: 源发行版 17 需要目标发行版 17

错误

java:警告:源发行版17需要目标发行版17

要解决“java: 无效的目标发行版: 17”错误,需从JDK版本、构建工具配置、环境变量、IDE设置、依赖兼容性五个维度系统性排查。以下是具体步骤和解决方案:

一、验证JDK版本与一致性

  1. 检查已安装的JDK版本

    java-versionjavac-version

    确保输出显示JDK 17(如17.0.11)。若版本低于17,需安装JDK 17。

  2. 验证构建工具使用的JDK

    mvn-v# Maven使用的JDK版本gradle-v# Gradle使用的JDK版本

    确保与项目配置的JDK 17一致。

  3. 安装JDK 17

    • 官方下载:Oracle JDK 17
    • 开源替代:Adoptium Temurin JDK 17

二、修复构建工具配置

Maven项目
  1. 统一版本声明

    <properties><maven.compiler.source>17</maven.compiler.source><maven.compiler.target>17</maven.compiler.target><maven.compiler.release>17</maven.compiler.release><!-- 推荐使用release标志 --></properties>
  2. 更新编译器插件

    <build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.11.0</version><!-- 支持JDK 17的最低版本 --></plugin></plugins></build>
  3. 检查父项目依赖

    <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.1.0</version><!-- 支持JDK 17的版本 --></parent>
Gradle项目
  1. 配置Java工具链

    java{toolchain{languageVersion=JavaLanguageVersion.of(17)}}
  2. 显式设置兼容性

    tasks.withType(JavaCompile){sourceCompatibility=17targetCompatibility=17}

三、检查环境变量

  1. JAVA_HOME

    • 指向JDK 17安装目录(如C:\Program Files\Java\jdk-17)。
    • 验证:终端执行echo %JAVA_HOME%(Windows)或echo $JAVA_HOME(Linux/macOS)。
  2. PATH

    • 包含%JAVA_HOME%\bin(Windows)或$JAVA_HOME/bin(Linux/macOS)。

四、IDE配置检查

IntelliJ IDEA
  1. 项目设置

    • File > Project Structure > Project:设置Project SDKProject language level17
    • Modules > Sources:确保语言级别为17
  2. 全局设置

    • File > Settings > Build, Execution, Deployment > Compiler > Java Compiler:设置Target bytecode version17
http://www.jsqmd.com/news/206039/

相关文章:

  • Arbess速成手册(13) - 集成Gitee、SonarQube实现Node.js项目自动化构建并主机部署
  • 基于SpringBoot的房屋租赁平台 Java源代码 免费分享
  • 7D-AI系列:AI大模型通用技术架构图
  • Springboot健身管理系统85ws5(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • Python全栈项目--基于Django的项目管理系统
  • 如何利用工业智能体提升汽车制造效率与良品率?
  • springboot分页不分页情况
  • 深度学习毕设选题推荐:基于python深度学习的手势识别数字机器学习
  • 如何通过模具智能管理降低汽车生产线的停机时间?
  • 深度学习计算机毕设之深度学习基于python-CNN的常见鱼类分类识别
  • 【毕业设计】基于python深度学习的手势识别数字
  • 自由职业者如何在AI浪潮中破局?这份「考证+实战」进阶指南请收好!
  • 【课程设计/毕业设计】机器学习 基于python深度学习的手势识别数字
  • 深度学习计算机毕设之人工智能基于python深度学习的手势识别数字
  • 英矽智能与赛诺菲签署8.88亿美元AI新药研发合作协议
  • 【剑斩OFFER】算法的暴力美学——最长公共前缀
  • 基于Dify+数据库+Echarts搭建的数据可视化助手(含自然语言转SQL)
  • 从ACPI!ParseArg函数中的ACPI!Buffer和ACPI!ParseOpcode到ACPI!Name中的ACPI!MoveObjData
  • vllm笔记(1):最基础的离线推理
  • 拒绝繁琐配置,推荐一款简洁易用的项目管理工具Kanass
  • 2核2G3M的云服务器有哪些用途?适合部署小型网站或博客吗?
  • 1核2GB服务器运行Nginx + MySQL + PHP(LNMP)会有性能瓶颈吗?
  • Lua 函数教程
  • 拒绝繁琐配置,推荐一款简洁易用的知识管理工具sward
  • 计算机深度学习毕设实战-基于python的海洋生物识别
  • 汽车制造质量大数据分析如何助力企业创新发展?
  • 这里还有8个“Manus”:1亿美元ARR,都是ToC
  • 【问题记录】解决unity 项目里用了AVPro Video,打包到Mac端时报错Plugin ‘AVProVideo.bundle‘ is used from several locations
  • 对象存储OSS是什么,有什么用途?
  • vscode出现中文乱码?