在保存文件时,如何让 eclipse m2e 构建当前项目和引用它的 EAR 项目?

Posted

技术标签:

【中文标题】在保存文件时,如何让 eclipse m2e 构建当前项目和引用它的 EAR 项目?【英文标题】:On saving a file, how to make eclipse m2e build the current project AND the EAR project that references it? 【发布时间】:2014-07-15 20:28:17 【问题描述】:

显然,我可以在 Eclipse 中轻松配置 m2e,这样当我保存文件时,Eclipse 将使用 Maven“构建”项目。我不确定它会指定什么目标。

我真正想知道的是如何使它不仅为单个项目构建工件,而且还为不同的项目运行 Maven 构建。例如,如果我有一个源文件所在的“app-war”项目,并且我还有一个将“app-war”作为依赖项的“app-ear”项目,我想看看它是否可以保存文件以首先构建 WAR,然后是 EAR,最后使用特定于应用服务器的协议在本地应用服务器上部署或重新部署应用。

【问题讨论】:

这不是矫枉过正吗? 一般来说当然可以,但我可以看到很多项目都会从中受益。事实上,RAD 显然试图通过与本地 WebSphere 实例合作来做到这一点。 【参考方案1】:

您可以将插件的执行与 m2e 的生命周期挂钩

<pluginManagement>
<plugins>
<plugin>
 <groupId>org.eclipse.m2e</groupId>
 <artifactId>lifecycle-mapping</artifactId>
 <version>1.0.0</version>
 <configuration>
   <lifecycleMappingMetadata>
     <pluginExecutions>
       <pluginExecution>
         <pluginExecutionFilter>
           <groupId>some-group-id</groupId>
           <artifactId>some-artifact-id</artifactId>
           <versionRange>[1.0.0,)</versionRange>
           <goals>
             <goal>some-goal</goal>
           </goals>
         </pluginExecutionFilter>
         <action>
             <!-- here -->
         </action>
       </pluginExecution>
     </pluginExecutions>
   </lifecycleMappingMetadata>
 </configuration>
</plugin>
</plugins>
</pluginManagement>

【讨论】:

以上是关于在保存文件时,如何让 eclipse m2e 构建当前项目和引用它的 EAR 项目?的主要内容,如果未能解决你的问题,请参考以下文章

M2E 并将 maven 生成的源文件夹作为 eclipse 源文件夹

如何映射 Eclipse m2e 插件未涵盖的 Maven 生命周期阶段?

什么是eclipse的m2e

摆脱 org.eclipse.m2e:lifecycle-mapping 的 POM not found 警告

在 Eclipse m2e 中,如何引用工作空间项目?

Eclipse 在构建之前不保存文件