码迷,mamicode.com
首页 > 其他好文 > 详细

maven多环境打包配置

时间:2015-06-16 16:45:57      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:maven   插件   多环境打包   

一、需求场景

1、开发环境和生产环境数据库地址和信息不同。

2、开发和生产日志等级不同

。。。

 

二、最简单的实现方式

pom.xml 中配置

<!-- 设置不同环境打包 -->
<profiles>
    
<profile>
        
<id>dev</id>
        
<properties>
            
<db.url>aa1</db.url>
            
<db.username>bb1</db.username>
            
<db.password>cc1</db.password>
            
<log.sqlEnable>true</log.sqlEnable>
            
<log.appender>console</log.appender>
        
</properties>
        
<activation>
            
<activeByDefault>true</activeByDefault>
        
</activation>
    
</profile>
    
<profile>
        
<id>product</id>
        
<properties>
            
<db.url>aa2</db.url>
            
<db.username>bb2</db.username>
            
<db.password>cc2</db.password>
            
<log.sqlEnable>true</log.sqlEnable>
            
<log.appender>mainLog</log.appender>
        
</properties>
        
<activation>
            
<activeByDefault>true</activeByDefault>
        
</activation>
    
</profile>
</profiles>
<build>
    
<finalName>xx-web</finalName>
    
    
<!-- src/main/resources目录下 上面配置的字符串过滤替换 -->
    
<resources>
        
<resource>
            
<directory>${project.basedir}/src/main/resources</directory>
            
<filtering>true</filtering>
        
</resource>
    
</resources>
</build>

 

使用如下:

eg.   /src/main/resources/conf/jdbc.properties

jdbc.driver=oracle.jdbc.OracleDriver
jdbc.url
=${db.url}
jdbc.username
=${db.username}
jdbc.password
=${db.password}

 

默认是激活 dev 的配置,activeByDefault 那里设置为true了。

 

所以打包到生产环境时,需要执行类似如下命令,

mvn clean -X package -Pproduct

 

这样就避免每次手动替换工程中的不同了。如果有更复杂的配置差异,请参考:

Maven插件之portable-config-maven-plugin(不同环境打包)

Maven实战(九)——打包的技巧

 

maven多环境打包配置

标签:maven   插件   多环境打包   

原文地址:http://blog.csdn.net/ycpanda/article/details/46519543

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!