java学习笔记8 - maven profile实现多环境打包
2013-01-21 12:58
344 查看
项目开发需要有多个环境,一般为开发,测试,预发,正式4个环境,通过maven可以实现按不同环境进行打包部署,命令为:
mvn package -P dev
其中“dev“为环境的变量id, 可以自己定义, 我定义的名称为:dev,qa,pre,prod , 具体在pom.xml中的配置如下:
1.profiles定义了各个环境的变量id
2.filters中定义了变量配置文件的地址,其中地址中的环境变量就是上面profile中定义的值
3.resources中是定义哪些目录下的文件会被配置文件中定义的变量替换,一般我们会把项目的配置文件放在src/main/resources下,像db,bean等,里面用到的变量在打包时就会根据filter中的变量配置替换成固定值
mvn package -P dev
其中“dev“为环境的变量id, 可以自己定义, 我定义的名称为:dev,qa,pre,prod , 具体在pom.xml中的配置如下:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> ...... <profiles> <profile> <id>dev</id> <properties> <env>dev</env> </properties> <activation> <activeByDefault>true</activeByDefault> </activation> </profile> <profile> <id>qa</id> <properties> <env>qa</env> </properties> </profile> <profile> <id>pre</id> <properties> <env>pre</env> </properties> </profile> <profile> <id>prod</id> <properties> <env>prod</env> </properties> </profile> </profiles> ...... <build> <filters> <filter>config/${env}.properties</filter> </filters> <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> </resource> </resources> ...... </build> </project>
1.profiles定义了各个环境的变量id
2.filters中定义了变量配置文件的地址,其中地址中的环境变量就是上面profile中定义的值
3.resources中是定义哪些目录下的文件会被配置文件中定义的变量替换,一般我们会把项目的配置文件放在src/main/resources下,像db,bean等,里面用到的变量在打包时就会根据filter中的变量配置替换成固定值
相关文章推荐
- Java随手笔记8之包、环境变量和访问控制及maven profile实现多环境打包
- 安卓学习笔记---JNI实现Java与C之间进行互相调用
- Docker学习笔记之一,搭建一个JAVA Tomcat运行环境
- JAVA学习笔记一(JAVA输出环境变量)
- 学习笔记--Java开发环境
- Java多线程学习笔记1——线程的实现方式以及定时器的使用
- Java学习笔记(32)-----------与运行环境交互
- 算法(第四版)学习笔记之java实现堆排序
- Java学习笔记之 swing 基本实现QQ截屏功能
- Docker学习笔记之一,搭建一个JAVA Tomcat运行环境
- java学习笔记--类ArrayList和LinkedList的实现
- Android(java)学习笔记66:线程的实现方案2思路以及代码实现
- 学习java笔记 --- 一个实现Iterable<E>接口的小范例
- Java2核心技术第七版的学习笔记(二):.The Java Programming Environment(Java的环境)
- java个人学习笔记01(配置java环境)
- JAVA学习笔记29——模拟实现ArrayList
- Java8学习笔记(4) -- Lambda表达式实现方式
- java学习笔记—实现一个类MyInputStream(28)
- 算法(第四版)学习笔记之java实现选择排序
- JAVA学习笔记_JS实现刷新_重新加载页面