Maven打包配置文件
2016-07-09 10:37
369 查看
通常我们会有多个系统环境,对应有不同的配置文件,通常在maven中我们打包只有jar, pom, maven-plugins, war and ear. 为了可以同时打包不同环境的配置文件,我们选择maven-assembly-plugin,把指定路径下的各种环境配置打包成zip和tar.gz包。
文件夹结构如下:
maven pom实现:
assembly 配置文件实现(dev为例)
如果需要对配置文件做处理,那么还需要使用maven-release-plugin对src/conf/下面的文件夹内容做处理,比如拷贝conf到target对应的folder,这样assembly的diretory也要跟着修改。
文件夹结构如下:
// mave standard folders src/main/java .... //config folder and files for different env conf/dev (properties and log4j xml files) conf/local conf/uat conf/prod //config assembly files for different env src/main/assembly/config/dev.xml src/main/assembly/config/local.xml src/main/assembly/config/uat.xml src/main/assembly/config/prod.xml
maven pom实现:
<properties> <!-- --> <assemble.directory>${basedir}/conf</assemble.directory> </properties> <plugin> <artifactId>maven-assembly-plugin</artifactId> <version>2.6</version> <executions> <execution> <id>package-config</id> <!-- 绑定到package生命周期阶段上 --> <phase>package</phase> <goals> <goal>single</goal> </goals> <configuration> <descriptorSourceDirectory> <!--描述文件夹路径--> <descriptor>${basedir}/src/main/assembly/config</descriptorSourceDirectory> </descriptors> </configuration> </execution> </executions> </plugin>
assembly 配置文件实现(dev为例)
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd"> <id>config-dev</id> <formats> <format>zip</format> <format>tar.gz</format> </formats> <includeBaseDirectory>false</includeBaseDirectory> <fileSets> <fileSet> <directory>${assemble.directory}/dev</directory> <outputDirectory>/${project.version}</outputDirectory> <lineEnding>unix</lineEnding> <fileMode>0644</fileMode> <directoryMode>0755</directoryMode> <includes> <include>**/*</include> </includes> </fileSet> </fileSets> </assembly>
如果需要对配置文件做处理,那么还需要使用maven-release-plugin对src/conf/下面的文件夹内容做处理,比如拷贝conf到target对应的folder,这样assembly的diretory也要跟着修改。
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>2.5</version> <executions> <execution> <id>dev-config</id> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${project.build.directory}/deploy/config-dev</outputDirectory> <resources> <resource> <directory>${basedir}/conf/dev</directory> <filtering>true</filtering> <includes> <include>*.properties</include> <include>*.xml</include> </include> </resource> </resources> </configuration> </execution> </executions> </plugin>
相关文章推荐
- maven学习
- maven插件maven-war-plugin的使用
- jenkins------部署项目到jboss eap下
- maven使用经验集
- 使用C#实现读取系统配置文件的代码实例讲解
- Powershell Profiles配置文件的存放位置介绍
- PowerShell入门教程之创建和使用配置文件实例
- SERV-U 的配置文件详解
- php.ini 配置文件的深入解析
- redis2.8配置文件中文翻译版
- PHP配置文件php.ini中打开错误报告的设置方法
- C#中读取App.config配置文件代码实例
- c++实现逐行读取配置文件写入内存的示例
- 关于session在PHP5的配置文件中的详细设置参数说明
- MySQL 配置文件my.cnf 例子最详细翻译
- apache 配置文件解说
- Android 读取Properties配置文件的小例子
- PHP 配置文件中open_basedir选项作用
- .net 读取非标准配置文件的小例子
- APACHE 配置文件中文版 httpd.conf FOR Apache 2.2.13