2017-08-01 158 views
1

我想在亚马逊服务器上多次运行一个war文件,每次都有一些稍微不同的属性,例如服务器端口或数据库模式。现在我必须为每个案例重建......也就是说,我怎样才能在运行时将弹簧引导属性文件提供给jgster生成的war文件?如何运行多个实例具有不同配置值的相同jijster war文件的相同角色

编辑澄清:

所有我想要的是能够通过指定参数(端口,数据库名,...)在运行时运行相同的战争文件的两个或多个拷贝。 实例应该在亚马逊系统(Linux)上运行 它们在启动时由/etc/init.d中的服务脚本启动,该脚本也用于在软件模块/参数更改的情况下启动和停止。 现在,使用JHipster开发的应用程序只能读取通过Maven传播的JHipster流构建的文件(使用-prod配置文件) - 使用单独的属性文件不起作用,不会读取 - 使用 - D结果相同:未读取

有没有人有任何建议?使用-D

--server.port=8081 

或添加参数:它看起来像JHipster有自己的财产读者...

+0

你读过https://开头做cs.spring.io/spring-boot/docs/current/reference/html/howto-properties-and-configuration.html#howto-externalize-configuration? –

+0

我做了,试了一下,它也没有工作......我怀疑,与jgster设置停止阅读其他文件或-D设置 –

+0

请添加细节到你的问题,如你如何启动应用程序?你在哪里存储相对于jar的外部配置以及如何命名jar?它只会在亚马逊或本地故障吗?你如何设置活动配置文件? –

回答

0

要开始不同的端口上的应用程序,你应该附加参数启动它

-Dspring.datasource.url=whatever.you.want 

,或者当您需要多个参数:

-Dserver.port=10000 -Dspring.datasource.url=whatever.you.want 
+0

我试过这个,但是jvm没有把值传给spring boot/jhipster,因为它抱怨server.port没有任何值。尝试与网址以及相同的问题。它可能是jhipster通过-D或补充文件只读取1个文件而没有其他信息? –

+0

@EricVanHemelryck配置文件呢?顺便说一句,忘了JHipster - 这是一个很棒的工具,你用它来生成很酷的应用程序。现在它只是弹簧启动+角度:) – xenteros

+0

我用jijster提供的配置文件:dev和prod。所以,在war文件中,我有一个application-prod.yml文件,其中包含yaml格式的很多属性,但对于不同的实例,某些属性需要更改。我的印象是单独读取.yml文件... –

相关问题