我可以通过pom.xml配置m2eclipse吗?

时间:2010-11-08 08:40:45

标签: eclipse maven-2 m2eclipse maven-eclipse-plugin

使用maven-eclipse-plugin,使用mvn eclipse:eclipse,您可以指定eclipse project naturesbuilders,它们将自动添加到eclipse项目中。

早期版本的m2eclipse使用了maven-eclipse-plugin的配置块,并且还允许您使用相同的机制激活自然和构建器。这似乎不再是这种情况,因为a)我在m2eclipse来源中找不到对maven-eclipse-plugin的任何引用,b)它只是不起作用: - )

所以这是我的问题:有没有办法从pom.xml配置m2eclipse生成的eclipse项目?具体来说:项目建设者和性质,但我也对其他选择感兴趣。

3 个答案:

答案 0 :(得分:9)

以下thread总结了几乎所有内容。首先,它解释了m2eclipse不再支持Maven Eclipse插件中的任何内容,因为:

  1. Sonatype不会保留它。
  2. 这会给他们带来太多麻烦。
  3. 其次,它声明m2eclipse处理其他项目性质和构建器的方法是编写项目配置器

      

    (...)我们鼓励编写配置程序,根据POM中可用的内容添加所需的性质和构建器。

    有关指南的信息,请参阅this link;有关checkstyle,findbugs,pmd的现有配置程序,请参见this project

答案 1 :(得分:3)

我现在将其实现为maven插件,我称之为maven-eclipseconf-plugin。 不幸的是,它是客户的专有工作,所以我不能分享它。但让我来描述我的所作所为:

绑定到生命周期验证,我检查是否存在eclipse .project文件。如果它在那里,我检查它是否存在我想要自动添加的构建器和性质(并且您可以通过使用maven属性或具有可配置名称的停止文件来停用此行为)。您还可以定义将要编写的配置文件(例如.pmd,它与this other question of mine相关)。配置文件的内容可以内联指定,可以来自外部文件,也可以来自URL。我还试图在配置文件中引入变量替换,其中一个特殊占位符将替换为多模块项目的根文件夹,但是I had to give up on that approach

无论如何,这个插件给了我很多我曾经使用的maven-eclipse-plugin的所有功能(当然还有很多),我很满意。也许我会在合同完成时再次在开源中构建类似的东西。

答案 2 :(得分:2)

项目配置程序是建议的方法。但m2e-extensions的最新版本是从2010年初开始,针对m2eclipse 0.10.x开发的。有一个名为m2e-code-quality的后继项目,它更新近,更活跃,并针对m2eclipse 0.12.x开发。

但目前m2e-extension和m2e-code-quality都不支持FindBugs。还有一些其他limitations with header files, exclusions and modified JARs

我已成功使用universal approach with AntRun, Ant and XMLTask从pom.xml自动添加Eclipse插件的项目性质,构建器和配置文件。