我在eclipse中创建了maven项目来编译java 1.4的xstream库。目前我有几个错误如下所示。
生命周期配置未涵盖的插件执行:org.codehaus.mojo:build-helper-maven-plugin:1.5:maven-version(执行:版本,阶段:初始化)
那是什么?m2e不支持2.4之前的maven-resources-plugin。使用 maven-resources-plugin版本2.4或更高版本。
从哪里获取此插件?
和其他几个类似于第一个的错误:
生命周期配置未涵盖插件执行: org.codehaus.mojo:建立辅助性Maven的插件:1.5:解析版本 (执行:版本,阶段:初始化)
生命周期配置未涵盖插件执行: org.apache.felix:maven-bundle-plugin:2.3.7:manifest(执行: bundle-manifest,phase:process-classes)
如何解决这些问题?
答案 0 :(得分:2)
这是因为Maven和Eclipse是两种不同的构建工具,有时类似,有时不相交。因此,M2插件应该使POM的内容适应Eclipse的构建生命周期。但是,由于Maven的构建生命周期比Eclipse更完整,因此M2并不总是能够进行这样的调整,并且在这些情况下它会引发您所询问的错误。
通常,您不必担心这个,因为项目最终将由Maven 构建,所以重要的是POM 100%被100%理解Maven,而不是Eclipse。我们主要使用Eclipse进行自动构建,而不是用于生成最终的JAR。
无论如何,您可以通过三个备选选项删除这些错误(在您发布的屏幕截图中提供):
Discover new M2 connectors
:如果您使用的是最新的M2版本,我不建议这样做。如果你愿意的话,你可以尝试一次。其他两个选项都旨在指示Eclipse 忽略报告的插件:
Permanently mark goal X in pom.xml as ignored
:它为POM添加了一个额外的声明,标记该插件可被Eclipse忽略。Mark goal X as ignored in Eclipse build
:它使POM保持不变,但将该信息添加到当前的Eclipse工作区元数据中,因此它将应用于同一工作区中的所有POM(现在和将来)。