2016-01-13 114 views
0

我最近升級到了Windows 10.我試圖在eclipse中創建一個新的maven項目,但它似乎沒有選擇我的JAVA_HOME設置。在Windows 10上爲Maven設置JAVA_HOME

這裏是JDK安裝目錄:

這裏是我的JAVA_HOME環境變量設置:

如果我在命令提示符下運行mvn -version,Maven的似乎爲JAVA_HOME獲取正確的值:

然後我嘗試在Eclipse中創建一個新的Maven項目,使用準系統的pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>StaticVoidGames</groupId> 
    <artifactId>DatabaseTest</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <name>DatabaseTest</name> 
</project> 

但該項目的JRE是1.5由於某些原因:

對於它的價值,我的eclipse工作區默認JRE與我的JAVA_HOME設置相同。

我試過手動更改構建路徑以使用正確的jdk,但它只是恢復。我已經嘗試清理項目,做一個maven更新,重新啓動eclipse,重新啓動我的電腦,並創建一個新的項目。 Maven仍然選擇Java 1.5,它甚至沒有安裝在我的機器上。

我所有的Google使用說,maven應該選擇JAVA_HOME設置來確定要使用哪個Java,但這似乎並不是這種情況。是否有另一個設置,我在某處失蹤?

+0

是什麼eclipsegenerał設置中指定的JDK版本(不是這些特定的för項目)? – Rozart

+0

可能的重複[導致Eclipse中的新Maven項目默認使用Java 1.5而不是Java 1.6,以及如何確保它不會?](http:// stackoverflow。問題/ 3539139/what-c​​auses-a-new-maven-project-in-eclipse-to-use-java-1-5-instead-of-java-1-6-b) –

回答

1

根據屏幕截圖,Maven正確地拾取了您的JAVA_HOME,但是您在Eclipse中看到的不是Java安裝的版本(1.5),但Maven將默認使用的版本爲編譯
在你的情況下,Maven將使用JDK 1.8並編譯設置sourcetarget到1.5(默認情況下)。

要將Maven設置爲與安裝的Java版本相同的級別,您需要配置Maven Compiler插件。一旦完成並在Eclipse更新(右鍵單擊該項目,Maven,Update Project)後,Eclipse將相應地更新其視圖。

您可以添加到您的POM以下Maven編譯器插件configuration

<project> 
    [...] 
    <build> 
    [...] 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-compiler-plugin</artifactId> 
     <version>3.3</version> 
     <configuration> 
      <source>1.8</source> 
      <target>1.8</target> 
     </configuration> 
     </plugin> 
    </plugins> 
    [...] 
    </build> 
    [...] 
</project> 

另外,也可以使用衆所周知的Maven性能僅設置上實現了相同的:

<properties> 
    <maven.compiler.source>1.8</maven.compiler.source> 
    <maven.compiler.target>1.8</maven.compiler.target> 
</properties> 
+0

剛剛意識到,問題是一個潛在的重複http://stackoverflow.com/questions/3539139/what-c​​auses-a-new-maven-project-in-eclipse-to-use-java-1-5-instead-of-java-1 -6-b –

+0

謝謝!使用''完美運作! –