assembly
虽然功能全, 但体验发现貌似打包的速度稍慢于仅用自带的profiles配置.
配置
<profiles>
<!-- 本地开发环境 -->
<profile>
<id>dev</id>
<build>
<resources>
<resource>
<directory>${profiles.dir}/dev</directory>
</resource>
<!--<resource>-->
<!--<directory>${profiles.dir}/type/3w</directory>-->
<!--</resource>-->
</resources>
</build>
<properties>
<env>dev</env>
</properties>
<!--默认打包的环境--> <!--不加默认貌似不能打包进来配置文件, 因为maven不知道该打包进来谁-->
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<!-- 测试环境 -->
<profile>
<id>test</id>
<build>
<resources>
<resource>
<directory>${profiles.dir}/test</directory>
</resource>
<!--<resource>-->
<!--<directory>${profiles.dir}/type/3w</directory>-->
<!--</resource>-->
</resources>
</build>
<properties>
<package.environment>test</package.environment>
</properties>
</profile>
<!-- 生产环境 -->
<profile>
<id>prod</id>
<build>
<resources>
<resource>
<directory>${profiles.dir}/prod</directory>
</resource>
</resources>
</build>
<properties>
<package.environment>prod</package.environment>
</properties>
<!--默认打包的环境-->
<!--<activation>-->
<!--<activeByDefault>true</activeByDefault>-->
<!--</activation>-->
</profile>
</profiles>
注意:
- 若想使用
公共+分环境
的模式, 分环境的配置不要放在resources
目录下,resources
目录留着放公共配置文件. -
resources
下的配置文件需要手动指定加入classes
目录下.
<!-- 配置maven项目编译插件,即jdk -->
<build>
<!--<finalName>${project.artifactId}</finalName>-->
<finalName>kg-anti-fraud-${project.version}</finalName>
<resources>
<!--
java源文件夹指定资源也打包进artifact, 默认是只打包.java的-->
<resource>
<directory>src/main/java</directory> <!--指定了配置文件所在地-->
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
<include>**/*.tld</include>
</includes>
<filtering>false</filtering>
</resource>
<!--resources目录下的配置文件也要打包-->
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<!--?排除不了?-->
</resource>
</resources>
</build>
貌似排除功能excludes
不好使.