我正在尝试在Eclipse中构建一个新的Maven项目。 在我的pom.xml中,我收到一条错误,上面写着
此行找到多个注释: - 缺少神器maven-plugins:maven-findbugs-plugin:plugin:1.3.1 - 缺少神器maven-plugins:maven-cobertura-plugin:plugin:1.3
这是pom.xml中“cobertura”的依赖项代码:
<dependency>
<groupId>maven-plugins</groupId>
<artifactId>maven-cobertura-plugin</artifactId>
<version>1.3</version>
<type>plugin</type>
</dependency>
我尝试添加如下所示的存储库,但仍然无效。
<repositories>
<repository>
<id>repository.maven-plugins.sourceforge.net</id>
<name>maven plug-in repository</name>
<url>http://maven-plugins.sourceforge.net/repository</url>
</repository>
<repository>
<id>repository.ibiblio.org-maven</id>
<name>ibiblio repository</name>
<url>http://www.ibiblio.org/maven</url>
</repository>
</repositories>
此处链接到Maven插件
http://maven-plugins.sourceforge.net/maven-findbugs-plugin/announcements/announcement-1.3.1.txt
http://maven-plugins.sourceforge.net/maven-cobertura-plugin/announcements/announcement-1.3.txt
我不想为这些插件进行手动安装。我需要通过在pom.xml中声明它们来自动安装它们
请帮忙。
由于
答案 0 :(得分:14)
作为一个相关问题,我发现,例如jaxen-1.1.3引用了上面的maven1工件。 Eclipse中的POM编辑器向您显示依赖关系层次结构。它添加了以下内容来选择明确的排除:
<dependency>
<groupId>jaxen</groupId>
<artifactId>jaxen</artifactId>
<version>1.1.3</version>
<exclusions>
<exclusion>
<artifactId>maven-cobertura-plugin</artifactId>
<groupId>maven-plugins</groupId>
</exclusion>
<exclusion>
<artifactId>maven-findbugs-plugin</artifactId>
<groupId>maven-plugins</groupId>
</exclusion>
</exclusions>
</dependency>
答案 1 :(得分:0)
这些是maven 1插件,不适用于maven 2.这些是插件的当前版本。
您可以在<plugins>
代码中定义插件,而不是<dependencies>
代码。另请注意以下这些插件的groupId
和artifactId
的更改...
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<version>2.5.1</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>2.3.3</version>
</plugin>