IntelliJ: Error:java: 目标级别 '1.5' 与源级别 '1.8' 不兼容
IntelliJ: Error:java: 目标级别 '1.5' 与源级别 '1.8' 不兼容
更新:请参见自答案。问题似乎在Maven导入或导入后模块设置的某种破坏上。
我有一个非常大的多模块Maven IntelliJ项目,有3个独立的根目录。
我正在构建整个项目以准备提交。
我从IntelliJ 2017.2.3 Ultimate收到以下错误:
信息:使用Eclipse编译器4.6.2编译java源代码 ... 错误:java:目标级别“1.5”与源级别“1.8”不兼容。需要目标级别“1.8”或更高版本
代码中没有任何应该使用Java 5编译的部分,全部都是Java 8。
该项目已配置为使用JDK 1.8
Maven的maven-compiler-plugin已经配置为使用Java的1.8版本,如这里所解释的。
2个问题:
- 这是什么原因引起的?这是IntelliJ的已知错误吗?
- 我如何找出在项目的大约100个模块中哪个模块引起了这个问题?
(IntelliJ: Error:java: Target level '1.5' is incompatible with source level '1.8')
问题原因:在项目的几个Maven模块中,出现了这个问题。解决方法是通过更新这些模块下的.iml文件,将以下条目更改为1.8-
解决方法如下:
1. 打开项目中出现问题的模块的.iml文件。
2. 找到以下条目:
3. 将上述条目中的jdkName属性的值更改为1.8,修改后的条目如下:
4. 保存并关闭.iml文件。
5. 重新构建项目,问题应该已经解决了。
通过以上步骤,我们可以解决(IntelliJ: Error:java: Target level '1.5' is incompatible with source level '1.8')这个问题。