当前位置: 首页 > 知识库问答 >
问题:

Eclipse项目:Maven Eclipse插件设置了错误的JRE类路径容器

宗政子辰
2023-03-14

我有一个基于Eclipse Mars 2 Java8、Maven 3.5.4的工作区。我使用mvn eclipse:clean eclipse:eclipse构建项目文件,并观察以下maven输出:

[INFO] Adding default classpath container: org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-**1.7**

工作区的默认JRE不是Java7,而是Java8,就像您可以查看以下Eclipse配置文件一样:

<workspace>\.metadata\.plugins\org.eclipse.core.runtime\.settings\org.eclipse.jdt.launching.prefs.

其中包含以下数据:

 org.eclipse.jdt.launching.PREF_VM_XML=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?>
        <vmSettings defaultVM\="57,org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType13,1538040823497*">
            <vmType id\="org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType">
                <vm id\="1431694854640" name\="jdk1.7.0_40" path\="C\:\\Program Files\\Java\\jdk1.7.0_40"/>
                <vm id\="1447417000092" name\="jdk1.6.0_45" path\="C\:\\Program Files\\Java\\jdk1.6.0_45"/>
                <vm id\="1538040823497" name\="jdk1.8.0_65" path\="C\:\\Program Files\\Java\\jdk1.8.0_65"/>
            </vmType>
    </vmSettings>

通过查看上述配置,您可能会注意到,默认VM的VM id为“1538040823497”,名为jdk1.8.0\U 65,位于C\:\\Program Files\\Java\\jdk1.8.0\U 65中。

此VM在Eclipse首选项Java/Installed JREs中正确注册为工作区默认值,并在执行环境JAVASE-1.8中标记为“完美匹配”。

我看不出Maven Eclipse插件考虑组织的任何原因。日食jdt。发射。JRE\U容器/组织。日食jdt。内部的调试。用户界面。启动器。标准VMType/JavaSE-1.7是正确的选择,而不是JavaSE-1.8。

我已经删除了所有JRE并重新注册了它们。

现在正好有一个1.6、1.7和1.8环境,每个环境都有一个“完美匹配”,并且1.8被选中为默认值(如上所示)。

每次生成项目时,我都必须手动更正项目(编辑构建路径,将JRE库从7更改为8),因为所有使用Java 8功能(如streams或lambda函数)的文件都会显示编译器错误,除非我手动指定正确的JRE。

我已经试过操纵组织了。日食jdt。发射。prefs,重新定义所有JRE,祈祷,诅咒或询问占卜板,都是徒劳的,Java 7总是由eclipse插件分配的(顺便说一下,版本2.10)。

有什么想法吗?

共有1个答案

阎宾实
2023-03-14

在pom文件中,尝试使用以下选项:

  <build>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
    </plugins>
  </build>

您也可以参考此链接:

https://dzone.com/articles/maven-eclipse-and-java-9

或者,如果一切都失败了,试试eclipse oxygen,这是一个预装了Maven集成插件的较新版本(不是最新版本,但比Mars IMO好得多),您只需添加一个m2e连接器插件即可。

 类似资料:
  • 我已经下载并提取了Eclipse。我在以下目录中有Eclipse:C:\Applications\Eclipse。当我尝试运行可执行文件时,我收到以下消息: 我目前有以下文件夹: 我是否需要为我的Windows 7操作系统设置一些环境变量来运行Eclipse?如果是,我可以得到一些帮助吗?如果不是,我可以得到一些帮助来运行Eclipse。 编辑 我已更改快捷方式以包含虚拟机的路径,现在收到此错误:

  • 在完成项目后,我收到了两条错误消息: > 在解决构建路径错误之前,无法构建项目。 未绑定的类路径容器:“method\u test”项目中的“JRE系统库[OSGi/Minimum-1.2]” 我想如果我找出第二个错误,第一个就会消失。然而,我在10.5.8 Mac上运行eclipse Juno,我无法从Oracle网站安装必要的JRE,因为它们与Mac不兼容。

  • 我用eclipse创建了一个maven项目,并用下面的命令制作了jar文件 打包 当我尝试知道我的mvn项目配置是真的还是不是这个命令 mvn exec:Java-D exec . main class = " giraph . hello world . app " 我得到这个错误: 在helloworld项目上执行目标 org.codehaus.mojo: exec-maven-plugin:

  • 本文向大家介绍Java eclipse项目中项目的类路径是什么?,包括了Java eclipse项目中项目的类路径是什么?的使用技巧和注意事项,需要的朋友参考一下 您可以使用构建路径在eclipse项目中包含需要设置类路径的Jar文件 步骤1- 右键单击项目选择构建路径→配置构建路径。 步骤2-选择库,选择添加外部JAR ...按钮。 步骤3-然后浏览所需的jar文件所在的文件夹,选择它们并按打开

  • 错误:出现JNI错误,请检查您的安装并重试线程“main”java.lang.noClassDefounderror:com/beust/jCommander/ParameterException在java.lang.class.getDeclaredMethods 0(本机方法)在java.lang.class.privateGetDeclaredMethods(未知源)在java.lang.c

  • 问题内容: 我正在编写一个Eclipse插件,它将在Java项目的上下文菜单中显示一个菜单项。我已将plugin.xml编写如下: 因此,我现在尝试编写扩展的类,以便可以创建动态菜单,并且该菜单的内容将基于Java项目根目录中存在的一组文件。但是我一直试图从方法中获取到根目录的路径。 基于plugin.xml文件,我可以确保仅在选择了单个Java项目的情况下才调用该方法,因此,我要做的就是获取当前