Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用可配置属性部署spring boot web应用程序_Java_Spring_Spring Boot_Deployment - Fatal编程技术网

Java 如何使用可配置属性部署spring boot web应用程序

Java 如何使用可配置属性部署spring boot web应用程序,java,spring,spring-boot,deployment,Java,Spring,Spring Boot,Deployment,经过研究,我了解到部署spring boot web应用程序的常用方法是作为war文件。然而,我有一个为一家公司制作的项目,现在,我需要向他们发送项目以进行试用,他们需要能够配置application.properties,或者特定于数据库位置和凭据。因此,我的问题是,我是否需要以其他方式部署项目,或者是否有方法使war文件应用程序属性在以后可以修改 > P> >您考虑春云配置服务器< /强> . 这是配置和外部化属性的最优雅的方式。如果不是,我强烈建议合并该部分。在配置服务器上插入sprin

经过研究,我了解到部署spring boot web应用程序的常用方法是作为war文件。然而,我有一个为一家公司制作的项目,现在,我需要向他们发送项目以进行试用,他们需要能够配置application.properties,或者特定于数据库位置和凭据。因此,我的问题是,我是否需要以其他方式部署项目,或者是否有方法使war文件应用程序属性在以后可以修改

> P> >您考虑<强>春云配置服务器< /强> .


这是配置和外部化属性的最优雅的方式。如果不是,我强烈建议合并该部分。在配置服务器上插入spring boot应用程序,无需太多编码,您的应用程序将更易于管理和扩展。

spring boot应用程序实际上通常打包为Uber JAR,并嵌入Tomcat。如果需要,您可以使用或类似的gradle插件来完成这项工作

一旦处于这种状态,jar就可以正常启动,您可以在调用它时覆盖配置属性

java $JAVA_OPTS -Dspring.service.name=my-service -jar /my-service.jar

编辑:这不是解决这个问题的唯一方法,@piy26是将外部配置注入企业级spring引导应用程序的一个极好的解决方案。但是,对于您正在描述的情况,您需要公司在那里设置自己的配置服务器,而且他们还必须覆盖配置服务器位置属性,以便应用程序将从其配置服务器中提取属性。对于您的示例,您似乎需要最简单的方法来覆盖jar中的应用程序属性。我已经使用spring boot maven插件来创建war,我真的不知道您的命令是如何工作的,或者如何使用它。对于我来说,spring在目标文件夹中创建了许多文件,其中包含war文件旁边的所有项目,但是,更改这些文件中的application.properties不会影响war,是否有方法使用命令而不是eclipse重新编译它?能否在回答中提供pom.xml的相关部分?下面是一个spring boot应用程序示例,您可以在执行jar时覆盖配置属性。自述文件展示了如何执行jar。请注意正在被覆盖的属性。