我如何让Maven 2构建2个单独的WAR文件

我如何让Maven 2构建2个单独的WAR文件,第1张

我如何让Maven 2构建2个单独的WAR文件

我不认为您可以一步完成此 *** 作(实际上,令Maven没有抱怨您的设置并且不知道应用了哪个设置,我感到很惊讶),我建议您使用配置文件或过滤来管理此使用案件。

如果您

web.xml
确实不同,则可以将maven-war-plugin配置放在两个配置文件中。或者,更好的是,您可以将它们合并为以下内容:

<plugin>  <groupId>org.apache.maven.plugins</groupId>  <artifactId>maven-war-plugin</artifactId>  <version>2.1-beta-1</version>  <configuration>    <webXml>src/main/config/${env}/web.xml</webXml>    <warName>cas-test</warName>  </configuration></plugin>

env
在两个配置文件中设置该属性
web.xml
在构建时选择正确的属性。

<profiles>  <profile>    <id>uat</id>    <properties>      <env>test</env>    </properties>  </profile>  <profile>    <id>prod</id>    <properties>      <env>prod</env>    </properties>  </profile></profiles>

如果您的

web.xml
属性相似(即,如果仅其中的值不同),则可以在两个配置文件中定义属性及其值,然后使用过滤来应用它们。像这样:

<profiles>  <profile>    <id>env-uat</id>    <activation>      <property>        <name>env</name>        <value>uat</value>      </property>    </activation>    <properties>      <key1>uat_value_key_1</key1>      <keyN>uat_value_key_n</keyN>    </properties>  </profile>  <profile>    <id>env-prod</id>    <activation>      <property>        <name>env</name>        <value>prod</value>      </property>    </activation>      <properties>      <key1>prod_value_key_1</key1>      <keyN>prod_value_key_n</keyN>    </properties>  </profile></profiles>

然后通过在命令行上传递env属性来激活一个配置文件或另一个配置文件,例如:

mvn -Denv=uat package

另一种选择是将值放入特定的过滤器中,并在构建时选择正确的过滤器(如本文中所示)。

确实有很多选择,但是正如我说的,我认为如果没有两次运行就无法做到这一点。

有关配置文件/过滤的更多资源:

  • Maven图书:第11章。构建配置文件
  • Maven图书:第15.3章。资源过滤
  • 构建配置文件简介
  • 在Google上进行Maven个人资料过滤搜索


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5565413.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-14
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存