导入错误的依赖版本

时间:2014-09-21 22:28:17

标签: eclipse maven

我在Eclipse中使用Maven - 我的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>

在我的构建路径中,我看到一个红色的&#34; x&#34;在maven-plugin-api-2.0.6.jar。我也看到其他使用版本2.0.6(maven-core,maven-project,maven-etc.)的jar似乎编译得很好 - 我知道导入正确的jar版本可以解决问题,但是为什么eclipse试图在我的项目中使用旧版本的maven?

1 个答案:

答案 0 :(得分:1)

首先,永远不要将maven-plugin用作依赖项。它应该配置为插件, NOT 作为依赖项,请参阅以下内容:

<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>