![](/img/trans.png)
[英]How to include python files of Java project into .war with maven?
[英]How to include specific files in war using maven
我在尝试找出一种使用 maven 控制战争中包含哪些资源的好方法时遇到了一些麻烦。在我的 src/main/resources 目录中,我有两个文件,logback.xml 和 logback-test.xml。 我希望能够做的是直接 maven 根据当前的 maven 配置文件将两者中的哪一个包含在类路径中。 我最初的想法是定义一个名为 log.config 的属性,然后在 maven-war-plugin 的配置中使用该属性。 就像是:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.3.1</version>
<configuration>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<includes>
<include>${log.config}</include>
</includes>
</resource>
</webResources>
</configuration>
</plugin>
和像这样的个人资料
<profile>
<id>test</id>
<properties>
<log.config>logback-test.xml</log.config>
</properties>
</profile>
如果我运行命令
mvn clean package -P 测试
在由此产生的战争中,我仍然得到了两个版本的 logback 文件。 我也试过使用
<packagingIncludes>${log.config}</packagingIncludes>
结果相同。
我在这里做错了什么? 有没有更好的方法来包含/排除文件而不必将 maven-war-plugin 定义复制/粘贴到我的所有配置文件中?
您可以尝试通过配置文件在构建中推送资源(或排除一些资源):
<profiles>
<profile>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<id>Acceptance</id>
<properties>
<myDatabase.url>jdbc:informix-sqli://Adbhost:Aservice/Adatabase:INFORMIXSERVER=Aifxserver;IFX_LOCK_MODE_WAIT=1</myDatabase.url>
<myDatabase.username>usernamea</myDatabase.username>
<myDatabase.password>pass</myDatabase.password>
</properties>
<build>
<resources>
<resource>
<directory>resources</directory>
<includes>
<include>keypair_rsa_acceptance.p12</include>
<include>logback-test.xml</include>
</includes>
<excludes>
<exclude>logback.xml</exclude>
</excludes>
</resource>
</resources>
</build>
</profile>
<profile>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<id>Production</id>
<properties>
<myDatabase.url>jdbc:informix-sqli://Pdbhost:Pservice/Pdatabasep:INFORMIXSERVER=Pifxserver</myDatabase.url>
<myDatabase.username>usernamep</myDatabase.username>
<myDatabase.password>pass</myDatabase.password>
</properties>
<build>
<resources>
<resource>
<directory>resources</directory>
<includes>
<include>keypair_rsa_production.p12</include>
<include>logback.xml</include>
</includes>
<excludes>
<exclude>logback-test.xml</exclude>
</excludes>
</resource>
</resources>
</build>
</profile>
</profiles>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.