来自神器的Eclipse,Tomcat,m2e和War Overlay

时间:2012-04-04 19:22:04

标签: eclipse tomcat maven-3 m2e

我认为这是由Tomcat中的自动发布引起的变化?但基本上,看起来当我在eclipse中有一个使用war覆盖的项目时,资源正在从本地父项目中复制,而不是那个父母的战争档案。在父项目中有很多正在进行的构建,并且拉入文件将无法工作,我需要将子项目基于父项目war文件。关于如何做到这一点的想法?

*编辑 - 更多细节。

叠加层有效,并在POM中指定为:

 <dependency>
   <groupId>org.parentproject</groupId>
   <artifactId>parentproject-web</artifactId>
   <version>2.0-SNAPSHOT</version>
   <type>war</type>
</dependency>

这导致了以下org.eclipse.wst.common.component

<?xml version="1.0" encoding="UTF-8"?>
<project-modules id="moduleCoreId" project-version="1.5.0">
<wb-module deploy-name="eurekastreams-web-ym2">
    <wb-resource deploy-path="/" source-path="/target/m2e-wtp/web-resources"/>
    <wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/>
    <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/>
    <dependent-module deploy-path="/" handle="module:/overlay/prj/parentproject-web?includes=**/**&amp;excludes=META-INF/MANIFEST.MF">
        <dependency-type>consumes</dependency-type>
    </dependent-module>
    <dependent-module deploy-path="/" handle="module:/overlay/slf/?includes=**/**&amp;excludes=META-INF/MANIFEST.MF">
        <dependency-type>consumes</dependency-type>
    </dependent-module>
    <property name="context-root" value="parentproject-web-childproject"/>
    <property name="java-output-path" value="/parentproject-web-childproject/target/classes"/>
</wb-module>

2 个答案:

答案 0 :(得分:0)

您需要安装m2e-wtp extension来处理WAR叠加层。然后将overlay项目声明为依赖项,并且还应该在Eclipse Workspace中将它包含在内。

答案 1 :(得分:0)

似乎答案是将目标文件夹添加到部署程序集:

<wb-resource deploy-path="/" source-path="/target/ROOT"/>

其中ROOT是目标构建文件夹,其中包含maven war overlay的结果 -