我已经在Eclipse Helios版本下创建了一个新的动态项目,其中我的JRE版本设置为1.6。 我已经通过单击Configure→Convert to Maven Project向Web应用程序添加了Maven功能。

添加后,Eclipse Problems视图中出现了一个构建错误:

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

请告诉我如何解决这个错误(我想有我的JRE版本为1.6)。


当前回答

TK Gospodinov answer is correct even for maven projects. Beware: I do use Maven. The pom was correct and still got this issue. I went to "Project Facets" and actually removed the Java selection which was pointing to 1.6 but my project is using 1.7. On the right in the "Runtimes" tab I had to check the jdk1.7 option. Nothing appeared on the left even after I hit "Apply". The issue went away though which is why I still think this answer is important of the specific "Project Facets" related issue. After you hit OK if you come back to "Project Facets" you will notice Java shows up as version 1.7 so you can now select it to make sure the project is "marked" as a Java project. I also needed to right click on the project and select Maven|Update Project.

其他回答

Project Facet->Java应该与maven-compiler-plugin工件源和目标的pom.xml中的任何内容相匹配。这太完美了。但是如果你在这里没有它,那么你也可以通过匹配Java编译器版本在项目方面的设置:Eclispe->首选项->Java->编译器

我发现@bigleftie上面的评论很有帮助: “有四件事必须相符

Project->Java Build Path->Libraries->JRE版本 项目->Java编译器->编译器遵从级别 项目- >项目方面- > Java - >版本 (如果使用Maven) pom.xml - Maven -编译器-插件工件的源和目标”。

在我的案例中,在项目属性、Java编译器中,JDK遵从性被设置为使用工作区设置,这与项目的Java版本不同。我点击“Configure Workspace Settings”,并将工作区编译器遵从级别更改为我想要的级别,问题就解决了。

我通过在项目属性的Project Facet属性中设置java版本来解决这个问题,右键单击项目根文件夹-> properties,搜索Project Facets,并选择兼容的java版本。

供参考-

我通过Myproject- >java Resource---->libraries- >JRE System libraries [java-1.6]单击此转到其“属性”选择“Classpath Container”将执行环境更改为java-1.8(jdk1.8.0-35)(最新)

您可以从更改项目方面 项目——>属性——>项目Facet——> Java——>{所需的JDK版本}