2015-10-07 48 views
1

我是一個新的「mavenist」... :-)在eclipse maven項目中設置jdk版本

我使用Eclipse Mars。

我創建了一個默認的maven項目,默認情況下它使用JDK 1.5。 我想用1.8.31代替。

我現在的POM顯示以下內容:

<plugin> 
    <artifactId>maven-compiler-plugin</artifactId> 
    <version>3.1</version> 
    <executions> 
     <execution> 
     <id>default-compile</id> 
     <phase>compile</phase> 
     <goals> 
      <goal>compile</goal> 
     </goals> 
     </execution> 
     <execution> 
     <id>default-testCompile</id> 
     <phase>test-compile</phase> 
     <goals> 
      <goal>testCompile</goal> 
     </goals> 
     </execution> 
    </executions> 
    </plugin> 

On apache maven website我讀,我需要改變\它替換到這樣的事情:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-compiler-plugin</artifactId> 
    <version>3.3</version> 
    <configuration> 
     <verbose>true</verbose> 
     <fork>true</fork> 
     <executable><!-- path-to-javac --></executable> 
     <compilerVersion>1.8.31</compilerVersion> 
    </configuration> 
    </plugin> 
  1. 這是正確的代碼,把?
  2. 它應該替換當前的代碼,還是應該將其添加到xml?

謝謝!

回答

2

這應該足夠了,取自我最近的項目。

<plugin> 
    <artifactId>maven-compiler-plugin</artifactId> 
    <configuration> 
     <source>1.8</source> 
     <target>1.8</target> 
    </configuration> 
</plugin> 
+0

你可以有

3

您在正確的軌道上,但只是覆蓋您需要的選項。

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

重複冗長,叉,可執行等不需要

+0

也許一個明顯的問題 - 它應該取代當前的代碼,對吧? – dushkin

+0

實際上,由maven生成的默認pom根本不配置此插件。所以,如果你知道爲什麼塊被添加(並且它用於某種目的),請保留它。否則,您可以替換完整的塊。 –

+0

pom.xml選項卡顯示一個非常小的XML文件,該文件不包含任何插件。我從「有效的pom」標籤版本中獲得了它。 – dushkin