博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
maven配置文件内嵌
阅读量:4069 次
发布时间:2019-05-25

本文共 2443 字,大约阅读时间需要 8 分钟。

增加Maven构建profile配置

在项目最顶层的pom.xml添加common和release两个profile,并声明${app.run.env}作为环境切换变量

common
true
common
release
release

注意在修改profile时,需要确定现有的properties和profile配置,避免冲突或者遗漏

使用Maven filter

在war工程pom文件或顶层父pom文件中增加resources filter配置

src/main/resources
true

修改输出的war包名称为应用的名称,如basis,这个名称要严格对应到应用名和tomcat的contextpath

//..
basis

内嵌配置文件

  • 拷贝线下配置文件:src/main/resources/META-INF/config/env-common/app-config.properties
  • 拷贝线上配置文件:src/main/resources/META-INF/config/env-release/app-config.properties

修改配置文件位置

  • 文件web.xml中可能存在配置文件初始化,注意替换
  • 文件src/main/resources/META-INF/spring/applicationContext.xml
classpath:META-INF/config/env-${app.run.env}/app-config.properties

日志配置修改

  • web.xml中配置log4j.xml或logback
 
log4jConfigLocation
classpath:META-INF/config/env-${app.run.env}/log4j.xml
logbackConfigLocation
classpath:META-INF/config/env-${app.run.env}/logback.xml

  • 拷贝log4j.xml或logback.xml文件到src/main/resources/META-INF/config/env-common或env-release下面
  • 修改日志文件编码为UTF-8
  • 修改日志文件目录为/opt/logs/${project.build.finalName}/${project.build.finalName}.log
  • 删除原先划分的各种appender,所有日志输出合并到同一个文件即可 /opt/logs/${project.build.finalName}/${project.build.finalName}.log

若两个环境的log配置文件没有差别,可以直接放在META-INF/config下,或者使用maven filter来替换文件中的部分变量,如level

tomcat jdbc连接池配置(如果系统没有使用tomcat的jdbc连接,忽略此配置)

  • context.xml拷贝, 如果系统没有使用tomcat的jdbc连接,忽略此配置
org.apache.maven.plugins
maven-antrun-plugin
1.6
assembly-deploy-package
prepare-package
run
  • 拷贝线下context文件, 如果系统没有使用tomcat的jdbc连接,忽略此配置:/src/main/resources/META-INF/config/env-common/context.xml

  • 拷贝线上context文件, 如果系统没有使用tomcat的jdbc连接,忽略此配置:/src/main/resources/META-INF/config/env-release/context.xml

转载地址:http://gnhji.baihongyu.com/

你可能感兴趣的文章
SSH原理与运用
查看>>
SIGN UP BEC2
查看>>
S3C2440中对LED驱动电路的理解
查看>>
《天亮了》韩红
查看>>
Windows CE下USB摄像头驱动开发(以OV511为例,附带全部源代码以及讲解) [转]
查看>>
出现( linker command failed with exit code 1)错误总结
查看>>
iOS开发中一些常见的并行处理
查看>>
iOS获取手机的Mac地址
查看>>
ios7.1发布企业证书测试包的问题
查看>>
如何自定义iOS中的控件
查看>>
iOS 开发百问
查看>>
Mac环境下svn的使用
查看>>
github简单使用教程
查看>>
如何高效利用GitHub
查看>>
环境分支-git版本管理
查看>>
uni-app 全局变量
查看>>
js判断空对象的几种方法
查看>>
java 不用递归写tree
查看>>
springboot2 集成Hibernate JPA 用 声明式事物
查看>>
fhs-framework jetcache 缓存维护之自动清除缓存
查看>>