通常情况下,产品开发时的参数和正式运营时的配置是不一样的。为了方便产品的开发和发布,同时兼顾考虑代码安全性问题。对于java web项目,我的解决办法如下:
原理:第一步:区分通用配置和各区特色配置。比如通用配置放在src/main/conf下面,私有配置放在WEB-INF/classes下面。
第二步:发布war包到发布svn
第三部:在运行环境Check out 或 update发布包内容
第四部:脚本解压war包,将共有配置替换成私有配置,启动。
脚本内容如下:
原理:第一步:区分通用配置和各区特色配置。比如通用配置放在src/main/conf下面,私有配置放在WEB-INF/classes下面。
第二步:发布war包到发布svn
第三部:在运行环境Check out 或 update发布包内容
第四部:脚本解压war包,将共有配置替换成私有配置,启动。
脚本内容如下:
release_war_path="./projectName.war"
deploy_path="webapps/projectName"
echo ${deploy_path}
unzip projectName.war -d ${deploy_path}
#注意默认情况下cp时,覆盖同名文件之前需要手动输入yes,\cp默认强制覆盖
\cp -fr classes/ webapps/projectName/WEB-INF/