更新Maven继续从Java JDK 1.8恢复到Eclipse中的JavaSE -1.8

时间:2015-10-14 12:06:38

标签: java eclipse maven

如何阻止maven不断将我的Java系统库从JDK 1.8更新回Java SE 1.8?我已经配置了构建路径,甚至将我的Java_Home变量设置为JDK路径。我还更新了构建配置。有人可以用一些特定的说明指定如何做到这一点,因为我是新手。我也注意到这种情况也在不断变化。仅供参考我是否正在使用Eclipse Mars。

关于下面的评论,我分享了Eclipse M2e Plugin截图。即使被选中,我也无法继续下一步。我还展示了已安装的内容以防万一另一个插件阻碍我使用m2e enter image description here

1 个答案:

答案 0 :(得分:6)

您需要了解Eclipse中的what an Execution Environment (EE) is。 EE的概念是对JRE的抽象,允许在没有绝对路径的情况下配置项目到JRE位置。来自维基页面:

  

执行环境(EEs)是JRE的符号表示。例如,您可以讨论J2SE-1.4执行环境,而不是在磁盘上的特定位置讨论具体名称的特定JRE。然后,系统可以配置为使用特定的JRE来实现该执行环境。

通常,不建议将项目配置为使用“Workspace default”作为其JRE系统库,因为这会在加载到不同工作区时使项目不一致。想一想:如果项目是针对Java 7开发的,那么我将它拉入我的JDK 8工作区;这可能是个大问题。通过使用EE,项目的配置使得它不知道(或关心)我的系统上实际上有匹配的JRE的位置。

我说了所有这些来为你设置答案,所以你了解Maven在做什么以及这些说明正在做什么。 m2e,Eclipse的Maven集成插件(正确地)将项目配置设置为使用EE而不是“工作空间默认”。从您的屏幕截图中我可以看到您在工作区中设置了JDK和JRE 1.8,因此理想情况下您应该删除一个(JRE)。得到偏好设置> Java > 已安装的JRE 。在那里你会看到列出的JRE和JDK。我建议删除JRE *。

然后进入“执行环境”首选项部分,选择 JavaSE-1.8 ,并确保将JDK作为默认实现进行检查。

现在,当m2e将您的项目配置为使用EE时,该EE将指向您已安装的JDK。如果其他人导入了该项目,它将指向安装了匹配JDK的任何地方。

*顺便说一下,在那里拥有不同版本的Java是完全可以接受和正常的;我经常处理针对不同Java版本的不同项目。