支持不同环境打包

1 pom添加如下配置:

1)添加指定打包id 区分各个环境

<profiles>

<profile>

<id>dev</id>

<properties>

<package.environment>dev</package.environment>

</properties>

</profile>

<profile>

<id>sit1</id>

<properties>

<package.environment>sit1</package.environment>

</properties>

</profile>

<profile>

<id>sit2</id>

<properties>

<package.environment>sit2</package.environment>

</properties>

</profile>

<profile>

<id>sit3</id>

<properties>

<package.environment>sit3</package.environment>

</properties>

</profile>

<profile>

<id>uat</id>

<properties>

<package.environment>uat</package.environment>

</properties>

</profile>

</profiles>

2)添加打包资源文件

<build>

<finalName>qbweb</finalName>

<plugins>

<plugin>

<artifactId>maven-compiler-plugin</artifactId>

<configuration>

<source>1.7</source>

<target>1.7</target>

<compilerArguments>

<verbose />

<bootclasspath>${java.home}\lib\rt.jar;${java.home}\lib\jce.jar</bootclasspath>

</compilerArguments>

</configuration>

</plugin>

<!--指定不过滤的文件,否则会乱码-->

<!-- 过滤后缀为pem、pfx的证书文件 -->

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-resources-plugin</artifactId>

<configuration>

<encoding>UTF-8</encoding>

<nonFilteredFileExtensions>

<nonFilteredFileExtension>der</nonFilteredFileExtension>

<nonFilteredFileExtension>dat</nonFilteredFileExtension>

<nonFilteredFileExtension>xls</nonFilteredFileExtension>

<nonFilteredFileExtension>xlsx</nonFilteredFileExtension>

</nonFilteredFileExtensions>

</configuration>

</plugin>

</plugins>

<resources>

<resource>

<directory>src/main/java</directory>

<includes>

<include>**/*.xml</include>

</includes>

<excludes>

<exclude>**/*.java</exclude>

<exclude>**/.svn/*</exclude>

</excludes>

</resource>

<resource>

<directory>src/main/resources</directory>

<filtering>true</filtering>

<!--包含那个文件夹下,那个后缀的文件-->

<includes>

<include>attachment/**</include>

<include>**/*.properties</include>

<include>**/*.xml</include>

<include>**/*.conf</include>

</includes>

<!--排除那个文件夹下,那个后缀的文件-->

<excludes>

<exclude>config/**</exclude>

<exclude>remark/**</exclude>

<exclude>genCodeTemplate/**</exclude>

</excludes>

</resource>

<resource>

<!--${package.environment} 步骤1 声明的内容-->

<directory>src/main/resources/config/${package.environment}</directory>

<!--用指定的值替换占位符的内容 最后会以 config下面的文件为准-->

<filtering>true</filtering>

<includes>

<include>auth-client.xml</include>

<include>CAS_SSO.properties</include>

<include>jdbc.properties</include>

<include>logback.xml</include>

<include>spring-dubbo-consumer.xml</include>

<include>rabbitmq.properties</include>

</includes>

</resource>

</resources>

</build>

2 打包war 包

run as .. 输入 package -P dev(sit1)这里的内容是指步骤1 声明的id的内容

如 package -P sit1 -Dskip Tests 打包集成一环境并跳过测试用例代码

注意:不需要特殊的安装插件

maven 打包不同环境的更多相关文章

  1. Idea开发环境中搭建Maven并且使用Maven打包部署程序

    1.配置Maven的环境变量 a.首先我们去maven官网下载Maven程序,解压到安装目录,如图所示: b.配置M2_HOME的环境变量,然后将该变量添加到Path中 备注:必须要有JAVA_HOM ...

  2. Maven打包pom里面配置exclude 排除掉环境相关的配置文件

    Maven打包pom里面配置exclude 排除掉环境相关的配置文件 有几种方式:1. 打包时,指定环境参数把环境的配置文件复制过去2. 不打包所有的环境相关的配置文件,直接由运维的人维护 可以在上传 ...

  3. 通过maven profile 打包指定环境配置

    背景 最近换了个新公司接手了一个老项目,然后比较坑的是这个公司的项目都没有没有做多环境打包配置,每次发布一个环境都要手动的去修改配置文件.今天正好有空就来配置下. 解决这个问题的方式有很多,我这里挑选 ...

  4. Eclipse Maven profiles 多环境配置,测试环境与开发环境分开打包

    1.将开发环境.测试环境.生产环境的配置文件分开存放,如下图: 2.在Maven中配置不同的环境打包配置文件的路径,配置如下: <profiles> <profile> < ...

  5. Maven为不同环境配置打包

    在开发过程中经常要遇到为不同的环境打包,这里面最主要的问题在于,不同环境的配置是不一样的,如果为不同环境打包每次都手工修改配置,那不但工作量大,而且很容易出错.如果用ant的话,用变量加上replac ...

  6. eclipse使用profile完成不同环境的maven打包功能

    原文:https://blog.csdn.net/duan9421/article/details/79086335 我们在日常开发工作中通常会根据不同的项目运行环境,添加不同的配置文件,例如 开发环 ...

  7. [maven] 项目不同环境自动打包

    应用背景 项目需要发布到本地环境,测试环境和生产环境甚至不同的生产环境上.这时候配置文件的一些参数需要被频繁的修改来修改去.为了解决这样的繁琐工作,就得使用maven profile特性. 步骤 1. ...

  8. springboot分环境打包(maven动态选择环境)

    分环境打包核心点:spring.profiles.active pom.xml中添加: <profiles> <profile> <id>dev</id> ...

  9. Maven根据不同环境打包不同配置文件

    开发项目时会遇到这个问题:开发环境,测试环境,生产环境的配置文件不同,打包时经常要手动更改配置文件,更改的少还可以接受,但是如果需要更多个配置文件,手动的方法就显得非常笨重了. 下面介绍一种方法,利用 ...

随机推荐

  1. Django框架----中间件

    我们已经会了给视图函数加装饰器来判断是用户是否登录,把没有登录的用户请求跳转到登录页面.我们通过给几个特定视图函数加装饰器实现了这个需求.但是以后添加的视图函数可能也需要加上装饰器,这样是不是稍微有点 ...

  2. 我是这样手写 Spring 的(麻雀虽小五脏俱全)

    人见人爱的 Spring 已然不仅仅只是一个框架了.如今,Spring 已然成为了一个生态.但深入了解 Spring 的却寥寥无几.这里,我带大家一起来看看,我是如何手写 Spring 的.我将结合对 ...

  3. shell expr match

    expr match "$pwrdm_stat" ".*,\($pwr_state:[0-9]*\)" 不理解 从字符串开始的位置匹配子串的长度   expr ...

  4. qt裁剪

    1. qt裁剪是什么,qt有哪些模块 1.1 2. windows消息机制,qt的signal slot,android/ios消息机制?

  5. ora-24550 signo=6 signo=11解决

    我们有台测试服务器pro*c/oci应用总是发生各种比较奇葩的现象,就这一台机器会发生,其他几十台都不会发生. sig 11的原因,内存地址访问越界.各signo的si_code含义可参考http:/ ...

  6. mysql 5.7/percona server/mariadb 10.2安装与服务器参数优化

    建议使用percona server linux generic版,从https://www.percona.com/downloads/Percona-Server-LATEST/下载,现在不在推荐 ...

  7. vs2015 dx15开发教程一

  8. 02:saltstack-api使用详解

    1.1 salt-api安装   参考博客:https://www.jianshu.com/p/012ccdff93cc 1.介绍 1. saltsatck本身就提供了一套算完整的api,使用 Che ...

  9. 安装搭建Python2.* 和3.* 环境详细步骤

    Python是跨平台的,它可以运行在Windows.Mac和各种Linux/Unix系统上. 安装Python 首先进入Python官方网站,将Python下载下来. win7安装python 在官网 ...

  10. python脚本解析json文件

    python脚本解析json文件 没写完.但是有效果.初次尝试,写的比较不简洁... 比较烦的地方在于: 1,中文编码: pSpecs.decode('raw_unicode_escape') 2,花 ...