【问题标题】:maven deployment of configuration information to tomcatmaven将配置信息部署到tomcat
【发布时间】:2016-02-17 09:56:54
【问题描述】:

在我当前的开发/部署工作流程中,我使用 tomcat7 maven 插件将我的 (Java/Spring) Web 应用程序部署到远程 tomcat 容器。 这让我很容易通过调用来部署我的应用程序的新版本

mvn tomcat7:部署

我现在的具体问题是如何正确处理配置信息:目前我将配置信息(数据库连接信息、密码等)保存在 .properties 文件中,这些文件与我的战争一起打包,然后远程部署到容器中如上所述。此过程的一项改进是使用 maven 配置文件为不同的目标部署环境包含不同版本的 .properties。

这种方法的问题在于,敏感信息(例如密码)与 war 文件打包在一起,而我更愿意将它们放在服务器上的其他位置,对 Web 应用程序可见(例如,作为其类路径的一部分) ,但可独立管理(以便允许更改某些配置设置而无需重新构建/重新部署应用程序)。

到目前为止,我发现的唯一解决方案意味着以下步骤:

1) 不要在打包的战争中包含 .properties

2) 使用 mvn tomcat7:deploy 将战争部署到远程服务器

3) 手动将 .properties 复制到一些服务器文件夹中,这些文件夹可以通过类路径从 Web 应用程序访问

在步骤 3) 中,“手动”表示在此步骤中不使用基于 maven 的机制。有人可以建议我一些机制,通过它可以将打包的战争和配置文件分别部署到远程服务器(例如一些?

【问题讨论】:

    标签: java spring maven tomcat


    【解决方案1】:
    For example , you can do this :
    1. Create module_config.zip with maven-assembly-plugin contains : *.properties
    2. Deploy war with mvn tomcat7:deploy 
    3. Start script to copy module_config > dir_deploy_application 
    4. ReStart tomcat7
    You can do it with (sh script) or (jenkins) 
    

    【讨论】:

    • 感谢您的回复,但我一直在寻找一些允许我完全通过 maven 完成所有操作(即部署打包的战争和 .properties 文件)的机制。
    猜你喜欢
    • 2017-04-17
    • 1970-01-01
    • 1970-01-01
    • 2020-08-08
    • 1970-01-01
    • 1970-01-01
    • 2017-07-22
    • 2015-02-05
    • 2011-12-06
    相关资源
    最近更新 更多