在部署到远程服务器上之前如何更改一些Java变量?

时间:2019-01-01 23:17:54

标签: maven tomcat jenkins java-ee netbeans

我目前正在构建Java Web应用程序(使用netbeans)。 我使用Jenkins使用以下管道(针对Jenkins)创建发行版本:

构建->测试->部署(到远程测试Web服务器)

构建和测试都可以,但是我对部署作业有疑问。 部署作业当前正在使用我先前生成的.war文件,并将其简单地传输到远程Web服务器(带有“部署到容器”插件)。 但我想先更改Web应用程序的数据库参数! (以便使用另一个远程测试数据库)。 我很乐意使用shell命令修改Java文件,但我不能这样做,因为我的.war仅由已编译的.class Java组成。

那么在将它部署到远程Web服务器之前,如何在.war文件中更改某些Web应用程序Java代码(用于数据库凭据)?

1 个答案:

答案 0 :(得分:0)

如果您有多个具有不同数据库的环境,则处理此问题的最佳方法是使用带有命令行参数的应用程序。您可以修改Java应用程序以读取命令行参数,然后在应用程序中使用这些参数。

例如--dburl = <database url> --dbusername= <db username>

另一种方法是从环境变量中获取这些参数。并在要部署应用程序的系统中定义这些变量。