【问题标题】:maven ear plugin not picking up application.xmlmaven ear插件没有拾取application.xml
【发布时间】:2011-12-03 01:50:12
【问题描述】:

我正在使用 jbosscc-seam-archtype 1.2,我将 application.xml 放在 EAR 项目中,在 /src/main/application/META-INF/ 下,但 maven-ear-plugin 没有收到它。有什么建议吗?

这是我的 maven EAR 插件的 sn-p:

<plugins>
    <plugin>
            <artifactId>maven-ear-plugin</artifactId>
            <configuration>
                <version>5</version>    
                <modules>
                    <webModule>
                        <groupId>com.***</groupId>
                        <artifactId>***-war</artifactId>
                        <contextRoot>***</contextRoot>
                        <unpack>${exploded.war.file}</unpack>
                    </webModule>

                    <jarModule>
                        <groupId>com.***</groupId>
                        <artifactId>***-datamodel</artifactId>
                        <includeInApplicationXml>true</includeInApplicationXml>
                    </jarModule>

                    <ejbModule>
                        <groupId>com.***</groupId>
                        <artifactId>***-bootstrap</artifactId>
                        <excluded>${exclude.bootstrap}</excluded>
                    </ejbModule>

                    <ejbModule>
                        <groupId>org.jboss.seam</groupId>
                        <artifactId>jboss-seam</artifactId>
                    </ejbModule>

                    <jarModule>
                        <groupId>org.jboss.el</groupId>
                        <artifactId>jboss-el</artifactId>
                        <bundleDir>lib</bundleDir>
                    </jarModule>

                </modules>

                <jboss>
                    <version>${version.jboss.app}</version>
                    <loader-repository>***:app=ejb3</loader-repository>
                </jboss>
            </configuration>
        </plugin>

我做错了什么?

【问题讨论】:

    标签: maven-2 pom.xml seam2 maven-ear-plugin


    【解决方案1】:

    默认情况下,即使您将 src/main/application/META-INF/application.xml 包含在您的 maven ear 项目中,您的 application.xml 也不会被选中,这是因为它将由 maven-ear-plugin&lt;configuration&gt; 指定的配置自动生成。如果您希望包含您的内容,则需要将 generateApplicationXml 更改为 false(默认为 true)。

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-ear-plugin</artifactId>
        <version>2.4.2</version>
        <configuration>
            <version>6</version>
            <displayName>MyEAR</displayName>
            <defaultLibBundleDir>lib</defaultLibBundleDir>
            <modules>
                <webModule>
                    <groupId>com.test</groupId>
                    <artifactId>my-web</artifactId>
                    <bundleFileName>my-web.war</bundleFileName>
                    <contextRoot>/MyWeb</contextRoot>
                </webModule>
            </modules>
            <generateApplicationXml>false</generateApplicationXml>            
        </configuration>
      </plugin>
    

    【讨论】:

      【解决方案2】:

      您可以在&lt;configuration&gt; 元素中使用&lt;applicationXml&gt;/your/location/&lt;/applicationXml&gt; 来指定自定义application.xml 文件的位置。

      请检查您是否真的需要自定义application.xml 文件,否则使用&lt;generateApplicationXml&gt;true&lt;/generateApplicationXml&gt;

      【讨论】:

        猜你喜欢
        • 2012-08-19
        • 1970-01-01
        • 2017-05-09
        • 1970-01-01
        • 2013-11-22
        • 2014-12-27
        • 1970-01-01
        • 2013-08-12
        • 1970-01-01
        相关资源
        最近更新 更多