Idea中Jdk和Language level的指定方式
更新时间:2025年04月11日 09:55:22 作者:长不大的大灰狼
这篇文章主要介绍了Idea中Jdk和Language level的指定方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
Idea中Jdk和Language level的指定
JDK在每个新版本都会有其新特性
而新版本一般也会向下兼容旧版本的特性,IDEA 是对这些 JDK 的新特性是这样介绍的:
- JDK 6 :@Override in interfaces
- JDK 7 :Diamonds,ARM,multi-catch etc.
- JDK 8 :Lambdas,type annotation etc.
- JDK 9 :Jigsaw project etc.

- 当我们使用 JDK 8 的时候,我们只能向下兼容 JDK 8 及其以下的特性,所以只能选择 8 及其以下的
language level。 - 所以当我们项目使用的是 JDK 8,但是代码却没有使用 JDK 8 的新特性,只需使用 JDK 7 的时候我们可以选择
7 - Diamonds,ARM,multi-catch etc. - 假设我们有一个项目代码使用了JDK 8 新特性:lambda 语法,但是 JDK 版本选择的却是 JDK 7,即使 language level 选择了
8 - Lambdas,type annotation etc.
也是没有多大意义的,一样会编译报错。
所以说,我们使用Project SDK(Software Development Kit, 软件开发工具包)来选择安装的JDK版本,使用Language level来限制JDK的版本。
注意
- 如果一个项目在本地运行正常,但是Language level配置错误,会在Linux部署项目时出现路径错误等问题。
- 做项目时,要注意这地方的配置。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
详解MybatisPlus中@TableLogic注解的使用
@TableLogic一般用于实现数据库数据逻辑删除,本文我们将介绍 @TableLogic 注解的用法,以及每个属性的实际意义和用法,感兴趣的可以了解一下2022-06-06
spring security动态配置url权限的2种实现方法
对于使用spring security来说,存在一种需求,就是动态去配置url的权限,即在运行时去配置url对应的访问角色。下面这篇文章主要给大家介绍了关于spring security动态配置url权限的2种实现方法,需要的朋友可以参考下2018-06-06
SpringBoot3使用devtools实现代码热部署的详细步骤
Spring Boot DevTools是一组用于提高开发人员生产力,并加速Spring Boot应用程序开发的工具,它提供了一些功能,可以帮助开发人员更快速地构建应用程序,并减少常见的开发问题,本文给大家介绍了SpringBoot3使用devtools实现代码热部署的详细步骤,需要的朋友可以参考下2024-01-01


最新评论