支持不同环境打包

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. nginx实现MySQL负载均衡

    默认Nginx只支持http的反向代理,要想nginx支持tcp的反向代理,还需要在编译时增加tcp代理模块支持,即nginx_tcp_proxy_module 下面操作步骤只让nginx支持tcp_ ...

  2. eHR自动同步获取LDAP中的邮箱地址

    背景:公司里有eHR系统,有网域,IBM Lotus Notes邮件系统,新人入职会在eHR系统里提前建好档案,网域帐号.邮箱帐号均会在入职前提前建好,因为邮箱帐号是晚于eHR建档的,因此在eHR建档 ...

  3. HFA and outhandler differentiate or not

    better trouble shooting auto-open accidently? HFA not stable? check code modification ASAP!!!

  4. qt裁剪

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

  5. Docker学习笔记之Docker的数据管理和存储

    0x00 概述 数据是应用程序重要的产出,所以很好的管理和存储数据,是对应用程序劳动结果的尊重.特别是在大数据时代,所有的数据都是重要的资产,保护好数据是每个开发者必须掌握的技能.我们知道,在 Doc ...

  6. Centos7部署tornado项目

    今天帮一个学生解决tornado的部署问题,在此记录了这其中的过程,其中的tornado项目更换为demo示例. 开发环境: 本地开发环境:Win10 + Python3.5.4 + PyCharm ...

  7. oracle 11g AUTO_SAMPLE_SIZE动态采用工作机制

    Note that if you're interested in learning about Oracle Database 12c, there's an updated version of ...

  8. oracle 12cR2 smart flash cache实测

    最近一直在处理新系统的性能优化问题,这两天特地测试了下oracle 11gR2开始引入的smart flash cache. 其介绍参考MOS文档,How To Size the Database S ...

  9. DevExpress 数据绑定

  10. 写了个脚本将json换成md

    用python 脚本将protocol.json中的json按照templete.md模版生成,结果在protocol.md中 Python: #!/usr/bin/python # -*- codi ...