本文共 11169 字,大约阅读时间需要 37 分钟。
我正在尝试使用 。 我首先尝试遵循主站点链接的 。 特别是,我的pom.xml基于 。 这是导致问题的插件的pom.xml中的一个片段...
org.codehaus.mojo aspectj-maven-plugin 1.0 true org.springframework spring-aspects org.springframework.data spring-data-neo4j 1.6 1.6 compile test-compile org.aspectj aspectjrt ${aspectj.version} org.aspectj aspectjtools ${aspectj.version}
我看到的错误是:
Multiple annotations found at this line: - Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:aspectj-maven-plugin:1.0:compile (execution: default, phase: process-classes) - Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:aspectj-maven-plugin:1.0:test-compile (execution: default, phase: process-classes)
我正在运行Eclipse 3.6.2和m2e 0.13。 我不是Maven专家,所以请尽可能在回答中多加解释。
我还通过尝试了 ,仍然遇到相同的错误。
我在用
org.apache.maven.plugins maven-antrun-plugin 1.6 runSomeAntTasks test-compile . .run
并将其更改为
org.apache.maven.plugins maven-antrun-plugin 1.6 runSomeAntTasks integration-test . .run
错误消失了。 也许不建议将执行绑定到test-compile阶段,因此找到不同的阶段可能是将插件管理配置添加到maven生命周期的替代解决方案。
作为先前答案的附录,我发现了一个变通办法,即您是否可以将所有这些样板添加到项目POM中。 如果您在以下位置查看:
{Eclipse_folder}/plugins/org.eclipse.m2e.lifecyclemapping.defaults_{m2e_version}
您应该找到一个名为lifecycle-mapping-metadata.xml
的文件,在该文件中可以进行其他答案和中所述的相同更改。
在我遇到类似问题的情况下,仅在将<pluginManagement>标记引入到有问题的pom.xml中之后,它才起作用,而不是使用Andrew的建议。 看起来该错误是由于缺少<pluginManagement>标记引起的。 因此,为了避免Eclipse中的异常,需要将所有插件标签简单地封装在<pluginManagement>标签内,如下所示:
... ... ....
一旦建立了这种结构,错误就会消失。
建议解决方案:
在pom.xml中的错误上使用快速修复 ,然后选择Permanently mark goal run in pom.xml as ignored in Eclipse build
-这将为您生成所需的样板代码。
要指示Eclipse在构建期间运行您的插件-只需在生成的配置中将<ignore/>
标记替换为<execute/>
标记:
另外,您也可以指示Eclipse在增量构建上运行插件:
true
对我来说,这是由AspectJ类引起的。 我在“发现”下找不到可以提供帮助的插件。 因此,我通过在现有STS安装的插件和功能文件夹下复制org.maven.ide.eclipse.ajdt文件来解决此问题。
我知道,这种做法很不礼貌。
转到workspace/rtc-ws/.metadata/.plugins/org.eclipse.m2e.core/lifecycle-mapping-metadata.xml
然后创建lifecycle-mapping-metadata.xml
文件并粘贴在下面并重新加载配置,如下所示
如果您使用的是Eclipse 4.2,并且在映射时遇到麻烦,并且不会给您带来麻烦,则pom.xml
创建新文件lifecycle-mapping-metadata.xml
在Windows -> Preferences -> Lifecycle mapping
配置它Windows -> Preferences -> Lifecycle mapping
(不要忘记按Reload此文件的每次更改后的工作空间生命周期映射元数据!)。 这是基于eclipse/plugins/org.eclipse.m2e.lifecyclemapping.defaults_1.2.0.20120903-1050.jar/lifecycle-mapping-metadata.xml
示例
org.codehaus.mojo buildnumber-maven-plugin create-timestamp [0.0,) org.apache.maven.plugins maven-dependency-plugin list [0.0,) org.zeroturnaround jrebel-maven-plugin generate [0.0,) org.codehaus.mojo gwt-maven-plugin compile [0.0,) org.apache.maven.plugins maven-dependency-plugin copy-dependencies unpack [0.0,) org.apache.maven.plugins maven-antrun-plugin [1.7,) run org.apache.maven.plugins maven-checkstyle-plugin [2.8,) check
我在Eclipse v4.3(Kepler)和Maven 3.1上遇到了这个问题。
解决方案是为您的Eclipse项目使用JDK而不是JRE。 确保尝试使用maven clean
并从Eclipse进行测试,以下载丢失的JAR文件。
建议您不要破坏pom文件,而建议您转到Eclipse中的Show View → Markers ,选择并删除适当错误的标记。
我今天有这个问题。 我正在使用STS 3.4及其捆绑的Roo 1.2.4。 后来我尝试使用Eclipse Kepler和Roo 1.2.5,出现同样的错误。
我已经改变了我的pom.xml添加pluginTemplates标签生成后和之前的插件的声明,但是没有奏效。
是什么让我着迷:
在我的PATH上配置的JDK,Roo和Maven bin目录:
导出PATH = / opt / jdk1.7.0_51 / bin:$ PATH导出PATH = / opt / spring-roo-1.2.5.RELEASE / bin:$ PATH导出PATH = / opt / apache-maven-3.2.1 / bin :$ PATH
进行如下配置:( )
$ mkdir hello $ cd hello$ roo.shroo> project --topLevelPackage com.fooroo> jpa setup --provider HIBERNATE --database HYPERSONIC_PERSISTENT roo> web mvc setuproo> perform eclipse
用Eclipse打开(没有STS,但我想它可以工作):导入->现有项目到Workspace
如果使用的是Eclipse Juno,则可能是Maven Integration for Eclipse WTP的问题 。 因此,从Eclipse Market Place安装相同的程序。
在Eclipse IDE帮助>> Eclipse Market Place >>中,输入查询wtp,它将显示Eclipse WTP for Juno的maven集成,安装它并更新maven依赖项并享受
我遇到了与Maven Thrift插件完全相同的问题。 这是我的解决方案,不需要弄乱您的pom.xml:
使用命令行Maven实用程序mvn
mvn eclipse:eclipse
创建一个蚀项目
在eclipse中导入项目。 切记使用
文件>导入>常规>现有项目到工作区
将项目添加到您的工作区中。
这应该可以解决问题。
在哪里找到WTP:
在pom.xml中的<插件>上单击鼠标右键,然后单击“发现新的m2e连接器”。
我安装了所有默认检查的东西,并且可以正常工作。
在Eclipse Luna 4.4.0中,您可以选择在首选项中忽略此错误。
窗口 > 首选项 > Maven > 错误/警告 > 生命周期配置未涵盖插件的执行 。 根据需要选择“ 忽略/警告/错误” 。
此外,在针对此错误的快速修复(Ctrl + 1)中,它提供了一个选项,可以在Eclipse首选项中将目标标记为在Eclipse构建中被忽略(实验性)
这是一种更干净的方法,因为它不会修改您的pom.xml
。
您还需要执行一个Maven > 更新项目,以修复其他项目中的相同错误。
在STS(Spring-tool-suite)中,您可以选择在首选项中忽略此错误
窗口>首选项> Maven>错误/警告>生命周期配置未涵盖的插件执行。 根据需要选择“忽略/警告/错误”。 然后。 右键单击项目,单击Maven并更新项目,然后错误将消失。
我遇到了同样的错误。 完成以下操作后,它消失了。
这个答案和上面的顶级插件管理答案一样好(也就是说,这很糟糕)。
只需删除pom中所有有问题的xml代码即可。
做完了 问题已解决(除非您刚刚破坏了Maven配置...)。
开发人员在执行任何这些解决方案之前应非常小心,他们了解插件管理标签。 只是随机地对插件打耳光,很可能会破坏其他人的Maven构建,以使日食能够正常工作。
请注意,今天的Eclipse Neon发行版中可用的(m2e)版本1.7.0支持用于指定生命周期映射元数据的新语法。 结果就是这样的样板(在这里,我们告诉m2e忽略目标):
org.eclipse.m2e lifecycle-mapping 1.0.0 org.codehaus.mojo exec-maven-plugin [1.5.0,) exec
可以在插件的执行节点中用单行替换:
有关详细信息,请参见 。
将插件执行的Maven首选项从错误更改为忽略
您可以在日食中抑制此错误:窗口->首选项-> Maven->错误/警告
由于缺少m2e连接器,在氖灯上也会发生此错误。 解决方案:悬停错误并选择-发现新的m2e连接器。
它将安装新的连接器。
真是一团糟。 我不记得在哪里找到它了,但是我必须添加以下内容才能使M2Eclipse感到满意。 更让人难过的是,要理解为什么需要这个标签并不容易。
... various plugins ... org.eclipse.m2e lifecycle-mapping 1.0.0 org.codehaus.mojo aspectj-maven-plugin [1.0,) test-compile compile
M2Eclipse插件还有许多其他问题,这些问题根本无法与Spring Data一起使用。 最后,我禁用了M2Eclipse,转而使用 。
m2e 0.13引入了m2e连接器和m2e市场,以扩展m2e功能。 就像旧的m2e-extras存储库一样。
您可以从以下偏好设置访问m2e市场: 偏好设置> Maven>发现>打开目录 。 安装WTP集成为我解决了大多数插件问题。
参见 。
为了解决一些长期存在的问题,m2e 1.0要求明确的说明如何处理所有与项目构建生命周期的“有趣”阶段绑定的Maven插件。 我们将这些指令称为“项目构建生命周期映射”或简称为“生命周期映射”,因为它们定义了m2e如何将信息从项目pom.xml文件映射到Eclipse工作空间项目配置以及Eclipse工作空间构建过程中的行为。
可以在项目pom.xml中指定项目构建生命周期映射配置,该配置由Eclipse插件提供,并且m2e附带的一些常用Maven插件也有默认配置。 我们称这些为“生命周期映射元数据源”。 m2e将为所有在映射元数据源中没有生命周期映射的插件执行创建错误标记,如下所示。
Plugin execution not covered by lifecycle configuration: org.apache.maven.plugins:maven-antrun-plugin:1.3:run (execution: generate-sources-input, phase: generate-sources)m2e使用插件groupId,artifactId,版本范围和目标的组合将插件执行与操作匹配。 可以指示m2e执行插件执行三个基本操作- 忽略 , 执行和委托给项目配置器 。
我在靛蓝和需要从XSD生成Java源代码的项目中遇到了同样的问题。
我可以通过提供缺少的生命周期映射来修复它,如我在Eclipse v3.7(Indigo)和m2eclipse上遇到了与我的Maven插件相同的问题。 通过在插件定义中明确说明执行阶段,可以轻松解决该错误。 所以我的pom看起来像这样:
... ... ... org.codehaus.mojo buildnumber-maven-plugin 1.0 yyyy-MM-dd_HH-mm-ss * post-clean *create-timestamp
我在博客文章之后进行了修复。
请遵循“ 呃,……我的项目不再建立 ”一节中的建议。 即使将其用于SpringSource Tool Suite,我也使用它来修复常规的Eclipse安装。 我不必修改我的pom文件。
改变中
aspectj-maven-plugin 1.2
进入
aspectj-maven-plugin 1.3
为我解决了问题。
使用此
确保选中“在安装过程中联系所有更新站点以找到所需的软件”。
安装AJDT m2e配置器
来源: (Andrew Eisenberg)
如果没有安装ADJT,它将自动安装,但是如果没有安装,请首先从“ Indigo更新站点”(根据您的Eclipse版本)安装AspectJ开发工具(ADJT)。
有关更多信息。
使用 ,是Sonatype的最新版本。
更新m2e之后,我遇到了完全相同的问题,并通过重新安装Eclipse WTP的Maven Integration解决了该问题。
事实证明,我卸载了它,试图将m2e从版本0.x更新到1.x。
我按照GUI提示找到任何连接器,然后从SpringSource团队找到了AspectJ Integrator。 安装后就解决了。
转载地址:http://jodnb.baihongyu.com/