开发项目时会遇到这个问题:开发环境,测试环境,生产环境的配置文件不同,打包时经常要手动更改配置文件,更改的少还可以接受,但是如果需要更多个配置文件,手动的方法就显得非常笨重了. 下面介绍一种方法,利用Maven插件来打包不同环境的配置文件.我们用到的是maven-war-plugin这个插件. 首先贴出整个pom文件: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.…
超越昨天的自己系列(6) 使用ibatis开发中,耗在dao层的开发时间,调试时间,差错时间,以及适应修改需求的时间太长,导致项目看起来就添删改查,却特别费力.   在项目性能要求不高的情况下,开始寻找比较能快速点的开发框架,首先从dao层开始,考虑到hibernate的逆向工程,以及零sql的标语,项目开始尝试使用.   自己想打一个hibernate底层的项目,顺便熟悉下hibernate. 首先用maven 命令构建一个java项目 mvn archetype:create -Dgroup…
前言:对于一个项目,开发和生产环境之间会使用不同的配置文件,最简单的例子就是数据库连接池的配置了.当然,可以在打包上线前对配置文件进行替换,不过这也太low了吧. 简单的pom.xml中的配置内容 比如我们在maven项目中引入了内嵌式的tomcat插件(当然打包方式是要war包),如下代码 <!--在build标签中--> <plugins> <plugin> <groupId>org.apache.tomcat.maven</groupId>…
1.xxx-api是基于springboot的模块 2.配置文件 application.properties spring.profiles.active=@activeEnv@ application-dev.properties server.servlet.context-path=/api/ server.port=8080 mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl #…
在开发的过程中,经常需要面对不同的运行环境(开发环境.测试环境.生产环境.内网环境.外网环境等等),在不同的环境中,相关的配置一般不一样,比如数据源配置.日志文件配置.以及一些软件运行过程中的基本配置.每次在不同环境部署程序时,都需要修改相应的配置文件,使之完成环境的配置.这么做存在一个比较大的问题:每次修改配置非常麻烦,而且配置错误会产生不可预估的影响,比如,在发布生产环境时用的开发环境的配置还好,但如果在开发环境下用生产环境的数据,将会造成生产数据的污染,导致生产环境崩溃. 目前JAVA相关…
Maven打包pom里面配置exclude 排除掉环境相关的配置文件 有几种方式:1. 打包时,指定环境参数把环境的配置文件复制过去2. 不打包所有的环境相关的配置文件,直接由运维的人维护 可以在上传war包前把配置给改了,用rar工具改里面的配置,但每次都改太麻烦第一次上面放有这个配置文件,后面打包时排除掉就可以了,上面的解压后就不会覆盖了我们公司就用2,后面打包时排除掉就可以了,上面的解压后就不会覆盖了 Maven打包pom里面配置exclude 排除掉环境相关的配置文件, resource…
利用maven按环境打包SpringBoot的不同配置文件 application-dev.properties对应开发环境 application-test.properties对应测试环境 application-prod.properties对应生产环境 application.properties中填写spring.profiles.active=@activatedProperties@, 这里的@activatedProperties@是一个变量对应pom文件里的环境配置. 下面是p…
问题描述:    windows机器使用-P指定环境打包,最后组装文件组装成功,配置文件成功移动,linux下却只移动了jar包. windows:                  linux:                                  解决方法:修改package.xml下方截图标示处               …
摘自:http://doc.okbase.net/bjhecwq/archive/118121.html maven有许多优秀的插件,最近在研究打包中替换多重环境的配置,同事介绍使用阿里的auto-config,使用了一下确实不错. auto-config其实和ant时代的字符替换差不多太多,只是ant需要自己写脚本完成这些事情,但是auto-config通过配置就可以了. auto-config的核心技术我个人认为是volicty的模板技术,包括里面的占位符oplacehold都是以${}vo…
在大型的项目组中,分不同的开发环境,测试环境,生产环境(说白了就是配置文件不同,或者数据源,或者服务器,或者数据库等);问题来了,如何使用Maven针对不同的环境来打包呢? Maven提供了Profile的概念,用来解决此类问题,其原理很简单,就是使用变量替换;举个例子来说明,测试项目目录结构如下图所示: 比如开发环境和生产环境的数据库不同,db.properties配置文件内容如下: #测试库 db.url=192.10.2.168 db.username=dbtest db.password…