处理最终位于生成的.war / .ear之外的配置文件的Maven方法是什么?
我有一些配置文件在开发期间是在我的webapp模块的依赖的公共配置模块中,但我希望在部署期间将一些文件放在不同的位置。
答案 0 :(得分:4)
您可以使用maven-assembly-plugin:
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptors>
<descriptor>src/main/assembly/description.xml</descriptor>
</descriptors>
</configuration>
</plugin>
</plugins>
文件description.xml应如下所示:
<assembly>
<id></id>
<includeBaseDirectory>false</includeBaseDirectory>
<formats>
<format>zip</format>
<format>tar</format>
</formats>
<fileSets>
<fileSet>
<directory>../YourProject/${project.build.directory}</directory>
<outputDirectory>/binaries</outputDirectory>
<includes>
<include>YourProject-${version}.war</include>
</includes>
</fileSet>
<fileSet>
<directory>src/main/release/docs</directory>
<outputDirectory>/docs</outputDirectory>
</fileSet>
</fileSets>
</assembly>
在部署期间,您可以解压缩或解压缩生成的文件。 tar / zip文件的内容如下所示:
/binaries/YourProject-1.0.war
/docs/readme.txt
/docs/documentation.doc