代码之家  ›  专栏  ›  技术社区  ›  wishihadabettername

Maven:如何使用Maven EAR插件将文件添加到EAR内部的根目录中?

  •  3
  • wishihadabettername  · 技术社区  · 14 年前

    我需要在使用Maven EAR插件生成的EAR中添加2个XML文件。

    不幸的是,我没有看到向EAR中添加任意文件的方法; documentation 其中的插件“EAR插件支持以下构件:EJB、WAR、JAR、EJB客户机、RAR、EJB3、PAR、SAR、WSR和HAR”。没有添加常规文件的功能。

    org.apache.maven.plugins插件 Maven EAR插件 2.3.1 福 福 一点四 国际清算银行 $parent.groupid_ 孚网 /FO org.richfaces.framework网站 Ri饰面API 朗朗朗斯 朗朗朗斯

    非常感谢。

    3 回复  |  直到 9 年前
        1
  •  9
  •   Eugene Kuleshov    14 年前

    maven-ear-plugin 2.4.2 您可以使用config元素earsourceditory、earsourceExcludes和earsourceIncludes来声明要包含在EAR中的额外文件。

    默认情况下,您只需将这些文件放在$basedir/src/main/application文件夹中。

        2
  •  2
  •   Fernando de la Cuadra    12 年前

    我也有同样的问题。我将ejb.properties文件放在ejbs/src/main/resources下,并使用了earsourcecdirectory和earsourcecincludes将文件从ejbs目录拉到EAR。但是,它没有 可靠地 把它放在lib目录中。EJB在中找不到它;它在lib目录中查找它。

    为了解决这个问题,我创建了src/main/application/lib目录,并创建了一个到ejb.properties文件的链接。然后,我删除了earsource目录并包含属性。现在,当我执行MVN CLEAN包时,它会自动提取属性文件并将其放在EAR的lib目录中。

        3
  •  0
  •   Cavva79    9 年前

    很抱歉@wishihadabettername迟到了,但我最近遇到了同样的问题,更多的是我无法移动要包含的文件,因为它们位于其他文件夹中,而不是EarsourceDirectory。我读 maven-ear-plugin ear:ear documentation 想到了如何移动我的 release 夹在耳朵根部。

    默认情况下绑定到生命周期阶段:包。

    工作目录 -在生成期间将资源复制到的目录。

    默认值为: $project.build.directory/$project.build.finalname .

    然后,我的子模块pom.xml如下所示:

    <plugin>
        <artifactId>maven-resources-plugin</artifactId>
        <executions>
            <execution>
                <id>copy-resources</id>
                <phase>prepare-package</phase> <!-- before package phase -->
                <goals>
                    <goal>copy-resources</goal>
                </goals>
                <configuration>
                    <!-- Work Directory of Ear plugin -->
                    <outputDirectory>${project.build.directory}/${project.build.finalName}</outputDirectory> 
                    <resources>
                        <resource>
                            <!-- my resource folder -->
                            <directory>release</directory>
                            <filtering>true</filtering>
                        </resource>
                    </resources>
                </configuration>
            </execution>
        </executions>
    </plugin>
    

    希望从现在起它能帮助人们

    推荐文章