2014-09-21 76 views
0

我使用Maven與Eclipse - 我的POM包含依賴關係:導入錯誤的依賴版本

<dependency> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-resources-plugin</artifactId> 
    <version>2.6</version> 
</dependency> 
<dependency> 
    <groupId>org.apache.maven</groupId> 
    <artifactId>maven-plugin-api</artifactId> 
    <version>3.2.3</version> 
</dependency> 

在我的構建路徑我看到maven-plugin-api-2.0.6.jar一個紅色的「X」。我還看到其他使用2.0.6版本的jar(maven-core,maven-project,maven等),它們似乎編譯得很好 - 我知道導入正確的jar版本可以解決問題,但爲什麼eclipse試圖在我的項目中使用舊版maven?

+1

後的'MVN依賴性輸出:tree' – 2014-09-21 23:22:29

回答

1

首先,maven-plugin不應該被用作依賴項。它應該被配置爲一個插件和作爲一個依賴看到以下內容:

<project> 
    ... 
    <build> 
    <!-- To define the plugin version in your parent POM --> 
    <pluginManagement> 
     <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-resources-plugin</artifactId> 
      <version>2.6</version> 
     </plugin> 
     ... 
     </plugins> 
    </pluginManagement> 
    <!-- To use the plugin goals in your POM or parent POM --> 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-resources-plugin</artifactId> 
     <version>2.6</version> 
     </plugin> 
     ... 
    </plugins> 
    </build> 
    ... 
</project>