热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

maven配置文件内嵌

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

增加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

class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">

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



tofile="${project.build.directory}/${project.build.finalName}/META-INF/context.xml" overwrite="true"/>







  • 拷贝线下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




推荐阅读
author-avatar
王振cmcc
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有