2

正如我在构建 ear 时在标题中所说的那样,工件(战争和 ejb)被复制到 ear 内,但是 APP-INF/lib 丢失了,我不知道可能是什么原因。

这是 pom.xml 的一部分:

<plugin>
            <artifactId>maven-ear-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <earSourceDirectory>${basedir}/contentEar</earSourceDirectory>
                    <defaultLibBundleDir>APP-INF/lib</defaultLibBundleDir> 
                    <modules>
                        <webModule>
                            <groupId>my.webs</groupId>
                            <artifactId>web</artifactId>
                            <bundleFileName>web.war</bundleFileName>
                        </webModule>

                        <ejbModule>
                            <groupId>my.test.doc</groupId>
                            <artifactId>myEjb</artifactId>
                            <bundleFileName>myEjb.jar</bundleFileName>
                        </ejbModule>
                    </modules>
                </configuration>
                <executions>
                    <execution>
                        <id>build-ear</id>
                        <phase>package</phase>
                        <goals>
                            <goal>ear</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

另外我应该说在 /contentEar 文件夹中只有 application.xml 和清单文件。

如果您对此有任何想法,请帮助我...

4

1 回答 1

1

Maven 应该放入APP-INF/lib什么?预期的结果是什么?从文档中:

高级配置

...

请注意,第三方库(即 JarModule)不包含在生成的文件中application.xml(只有 ejb-client 应该包含在 java 条目中)。application.xml但是,可以通过指定 includeInApplicationXml标志将 jar 依赖项包含在生成 的文件中。

defaultLibBundleDir还可以通过指定参数为所有第三方库指定默认捆绑目录

但是我jarModule在您的配置中看不到任何内容。您是否可能将一些 JAR 库声明为依赖项?请说清楚。

以下帖子也可能有所帮助:

于 2010-08-03T11:46:57.517 回答