【发布时间】:2013-03-08 17:47:42
【问题描述】:
我有一个打包为“战争”的 Maven 网络项目。该包生成确认为war格式的war文件。但是,我喜欢将项目打包为“jar”以及默认的“war”格式。所以,我正在尝试使用“maven jar”插件来实现这一点。我正在使用以下 jar 插件配置。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<executions>
<execution>
<id>make-a-jar</id>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
<configuration>
<classesDirectory>${project.build.outputDirectory}</classesDirectory>
<includes>
<include>../../src/main/webapp/**</include>
<include>**/*</include>
</includes>
</configuration>
</plugin>
“package”命令生成一个 jar 文件,其中包含类和“resources”文件夹的内容,war 文件生成一个正确的“war”文件。
但是 'src/main/webapp' 的内容不包含在 jar 文件中。 如何使用jar插件在jar中包含src/main/webapp的内容?
【问题讨论】:
-
你需要这个罐子做什么,为什么战争不行? maven-jar-plugin 可能是错误的方式。
-
这是一个常见的 Web 应用程序,它可以作为 servlet 包含在其他 Web 应用程序中,也可以作为战争本身独立部署。无论哪种方式,servlet 代码都可以工作。它为用户提供了在 web.xml 中使用 servlet 或将其用作 webapp 的灵活性。
-
我认为maven jar插件不会包含与War项目相关的内容。它具有标准的文件夹结构,并且会遵守它。如果您想以任何所需格式打包,请使用程序集插件