Maven"构建路径指定执行环境J2SE-1.5",即使我将其更改为1.7

bhe*_*ler 60 java eclipse m2eclipse maven

在Eclipse Juno中,我安装了最新的m2e插件(1.2.20120903-1050).在首选项中,我在Java中添加了jdk1.7.0_11 - > Installed JREs - > Add,然后指定了location(C:\Program Files\Java\jdk1.7.0_11).当我创建一个新的Maven项目并运行它时,我收到一个警告:

构建路径指定执行环境J2SE-1.5.工作区中没有安装与此环境严格兼容的JRE.

我不知道如何解决这个问题.

我相信这是一个Maven问题,因为我在运行普通的Java项目时没有这个错误.我在这里读到我应该更改"maven-compiler-plugin.pom"并将源和目标从1.5改为更合适的东西.就我而言,1.7.我已经这样做了,但我仍然收到警告.

jav*_*der 118

上面的所有答案都可能暂时有效,但每当你在命令行或Maven→更新项目上运行maven时...... JDK将被重置,这也是我理解的问题.

要妥善解决此问题,请将以下代码添加到您的pom文件中.记得做一个Maven→更新项目...之后或mvn clean compile在命令行.

<build>
    <pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>
        </plugins>

    </pluginManagement>
</build>
Run Code Online (Sandbox Code Playgroud)

  • 这是唯一的解决方案.最好告诉Maven使用正确的编译器而不是Eclipse.这样你也可以确保你的队友不会遇到同样的麻烦. (7认同)
  • 一个额外的补充……如果您实际上没有在 Eclipse 中安装和引用 Java JRE7,那么上述方法都不起作用。假设您确实安装了它但未在 Eclipse 中引用 - 那么以下可能是必要的:进入:==&gt; 窗口、首选项、Java、已安装的 JRE ==&gt; 为 Java JRE7 添加 JRE 路径:“C:\Program文件\Java\jre7" (2认同)
  • @Adrian我同意.m2e插件有一个错误识别pom目标jdk的变化. (2认同)

Bre*_*een 43

  1. 右键单击您的项目
  2. 单击属性
  3. 单击左侧菜单中的"Java Compiler"选项
  4. 在右侧的JDK合规部分下,将其更改为"1.7"
  5. 运行Maven clean,然后运行Maven构建.

  • 谢谢你的帮助.除此之外,我还必须右键单击JRE系统库 - >属性 - >并将执行环境更改为JavaSE-1.7 (18认同)
  • 在第5步之后,你可以自由地重复所有1.无限广告...... -1 (5认同)
  • @Brett VanderVeen:默认情况下,Maven插件如何获取J2SE 1.5?有没有办法通过对settings.xml进行任何更改来更改默认值? (3认同)
  • 可悲的是,Maven似乎并不知道将其设置为默认JRE.我有1.7作为默认执行.ENV.但我的项目一直在转向JRE 1.5.配置maven-compiler-plugin就可以了.:) (2认同)

小智 30

我知道这是一个古老的话题.我有同样的问题.我测试了关于这个主题的所有答案.这里什么都没有用......但我找到了另一个解决方案.

转到pom-> overview并将这些添加到您的属性:

  • 名称:"maven.compiler.target"值:"1.7"

  • 名称:"maven.compiler.source"值:"1.7"

现在做一个maven更新.


use*_*334 13

对于导入的maven项目和JDK 1.7,请执行以下操作:

  1. 从Eclipse中删除项目(保留文件)
  2. 删除项目目录中的.settings目录,.project和.classpath文件.
  3. 修改您的pom.xml文件,添加以下属性(确保POM中的显式maven-compiler-plugin定义不会覆盖以下设置)

    <properties>
        <maven.compiler.source>1.7</maven.compiler.source>
        <maven.compiler.target>1.7</maven.compiler.target>
    </properties>
    
    Run Code Online (Sandbox Code Playgroud)
  4. 将更新的项目导入Eclipse.


小智 5

我正在使用带有最新spring,maven插件和JDK1.6.0_25的Juno 4.2.

我遇到了同样的问题,这是我的修复,每次Eclipse重启后都会默认:

  1. 项目清单
  2. 右键单击maven项目
  3. Java构建路径
  4. 库选项卡
  5. 选择当前错误的JRE项目
  6. 单击编辑
  7. 选择最后一个选项(工作区默认JRE(jdk1.6.0_25)

  • 你也忘了在最后重建maven项目.之后,所有人都回到了以前的状态.-1. (4认同)