使用Maven生成Eclipse项目文件

时间:2010-06-28 09:28:52

标签: java eclipse maven-2

当我尝试使用mvn eclipse:eclipse生成Eclipse项目文件时,出现以下错误:

  

插件管理器执行目标中的内部错误   'org.apache.maven.plugins:maven-eclipse-plugin:2.9-SNAPSHOT:eclipse':无法加载魔法   'org.apache.maven.plugins:行家-Eclipse的插件:2.9快照:蚀'   在插件'组织中   .apache.maven.plugins:Maven的Eclipse的插件。   缺少必需的课程:   组织/ Codehaus的/丛/资源/装载器/ ResourceNotFoundException

看来我正在使用Maven Eclipse插件的2.9-SNAPSHOT版本。我的猜测是这个版本的插件有一个错误,如果我使用稳定版本(而不是快照),问题将得到解决。有没有办法可以更改我正在使用的这个插件的版本,还是这个问题与Eclipse插件的版本无关?

3 个答案:

答案 0 :(得分:24)

使用插件的完全限定名称来指定版本:

$ mvn org.apache.maven.plugins:maven-eclipse-plugin:2.8:eclipse

或编辑~/.m2/plugin-registry.xml文件(对于高级用户,请进行备份)。

或者尝试使用-npr,--no-plugin-registry选项告诉maven不要将~/.m2/plugin-registry.xml用于插件版本:

$ mvn -npr eclipse:eclipse

但我不保证成功的结果。有关详细信息,请参阅Introduction to the Plugin Registry

或从本地存储库中删除版本2.9-SNAPSHOT

$ rm -rf ~/.m2/repository/org/apache/maven/plugins/maven-eclipse-plugin/2.9-SNAPSHOT

答案 1 :(得分:2)

不幸的是问题仍然存在,所选答案对我没有帮助,因为Maven总是想要获取最新版本,这是有缺陷的2.9-SNAPSHOT。

我必须在我的POM中手动指定工作版本2.8,如下所示:

<plugin>
   <groupId>org.apache.maven.plugins</groupId>
   <artifactId>maven-eclipse-plugin</artifactId>
   <version>2.8</version>
   <configuration>
...

答案 2 :(得分:0)

接受的答案中提到的解决方案似乎不起作用。使用没有插件注册表,它总是尝试使用最新版本,并重新下载它,你试图删除它。

我通过更新文件解决了这个问题

  

的.m2 /库/组织/阿帕奇/行家/插件/行家-Eclipse的插件/行家-元数据central.xml

你不应该编辑这个文件,但是如果它使用2.9-SNAP而不是2.9,则可能意味着此文件最迟指定2.9-SNAP而不是2.9