72

Eclipse 的“问题”选项卡显示此错误:

说明:Java 编译器级别与安装的 Java 项目方面的版本不匹配。
资源:分组
路径:[空白]
位置:未知
类型:分面项目问题(Java 版本不匹配)

pom.xml有这个设置:

<plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
            <source>1.6</source>
            <target>1.6</target>
        </configuration>
    </plugin>
</plugins>

还有哪些设置不匹配?

4

5 回答 5

149

你检查过你的Project Properties -> Project Facets面板吗?(从那个帖子

WTP 项目由多个功能单元(称为方面)组成。

Java 方面版本需要始终与 Java 编译器合规级别匹配。
更改 Java 级别的最佳方法是使用 Project Facets 属性面板,因为这将同时更新两个位置。

支付意愿

Project->Preferences->Project Facets”将其配置存储在“ ”目录org.eclipse.wst.common.project.facet.core.xml下的“ .settings”文件中。

内容可能如下所示

<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
  <runtime name="WebSphere Application Server v6.1"/>
  <fixed facet="jst.java"/>
  <fixed facet="jst.web"/>
  <installed facet="jst.java" version="5.0"/>
  <installed facet="jst.web" version="2.4"/>
  <installed facet="jsf.ibm" version="7.0"/>
  <installed facet="jsf.base" version="7.0"/>
  <installed facet="web.jstl" version="1.1"/>
</faceted-project>

还要检查您的Java 合规级别

Java 合规级别

于 2010-02-10T20:07:39.973 回答
43

您有两个选项可以解决此问题:

1-手动确保两个版本匹配。
2- 使用 IDE 的帮助如下:
- 鼠标右键单击“问题”视图中的错误
- 从弹出菜单中选择“快速修复”菜单项
- 在提供的对话框中选择正确的编译器级别,然后单击“结束'。

取自Eclipse:Java 编译器级别和项目方面不匹配

还提供了可以访问 Java 编译器和构面版本的位置。

于 2010-02-10T20:08:00.237 回答
21

项目方面应该由 M2Eclipse 插件从 POM 配置自动派生。如果您对 POM 进行了一些更改并且需要 Eclipse 将它们考虑在内,请右键单击您的项目,然后转到Maven > Update Project Configuration。您不应手动设置项目构面。

于 2010-02-10T20:40:07.867 回答
0

我在 Java 1.6 上运行应用程序时遇到了这个问题,而我为不同的应用程序安装了 Java 6、7、8 的所有三个版本。我访问了导航器视图并从 facet.core.xml 中手动删除了不需要的方面。清理构建和哇!

<?xml version="1.0" encoding="UTF-8"?>

<fixed facet="jst.java"/>

<fixed facet="jst.web"/>

<installed facet="jst.web" version="2.4"/>

<installed facet="jst.java" version="6.0"/>

<installed facet="jst.utility" version="1.0"/>

于 2018-03-14T11:40:45.563 回答
0

在 Spring STS 中,右键单击项目并选择“打开项目”,此设置在后台执行必要的操作并将项目带回工作空间。

感谢和问候 Vengat Maran

于 2016-05-09T04:12:32.680 回答