Java compiler level does not match the version of the installed Java project facet

有个 Eclipse 下的 Java 项目, 虽然已经把所有的错误都调通了, 但是在工程的左下角还是有个鲜红色的叉. 检查 Problems, 可以观察到唯一一个错误如下:

Java compiler level does not match the version of the installed Java project facet. .. Unknown Faceted Project Problem (Java Version Mismatch)

这是什么意思呢? 字面意思, Java 版本不匹配. 实际意思? 不懂, 求助 google 去.

按图索骥,google中寻找错误的来源–于是很快找到了这篇博客.

从文中介绍可以知道,错误的根源是 maven 的配置有问题. maven 设置了 java 编译器和虚拟机的版本, 而当 java 版本更新后, maven 工程却没有跟上步伐, 所以这个错误就产生了.

解决方法也不困难, 寻找 pom.xml, 修改其中 java 的 version 即可.

因为linux下, 寻找同样方便

find . | grep "pom.xml"

很快就把文档找出来了.

寻找如下样子的内容

org.apache.maven.plugins
maven-compiler-plugin

1.6
1.6
utf-8

把高亮部分的内容修改为当前的 java 版本即可