java-来自Spring Config Server的配置会覆盖服务器端口vm参数
作者:互联网
我有以下服务:
> Spring Cloud Config服务器
>尤里卡发现服务
>事件服务(春季启动应用)
我使用“配置优先”模式.这意味着我先启动Config Server,然后再启动发现服务.
然后,我运行事件服务.它需要从Config Server进行配置.在配置中,我指定server.port属性等于8081.
我看到我的事件服务正在发现服务中注册.
当我尝试启动另一个事件服务实例时,就会出现问题.要在其他端口上运行它,我使用-Dserver.port vm参数.所以我的命令看起来像:
java -jar event-service.jar -Dserver.port = 8082
但是应用程序无法启动,提示8081已在使用中.似乎事件服务使用配置服务器中的配置,并且此配置优先于VM参数.但是我当时认为应该是ver-verca.
解决方法:
命令行参数的顺序错误:系统变量必须在jarfile之前:
$java -jar -Dserver.port=8082 event-service.jar
从命令行指定属性的3种方法
>环境变量:$server_port = 8082 java -jar event-service.jar
>系统变量:$java -jar -Dserver.port = 8082 event-service.jar
>命令行参数:$java -jar event-service.jar –server.port = 8082
请注意,对于环境变量,点被下划线替换.
来源:https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html
标签:spring-cloud-config,spring-boot,spring-cloud,spring,java 来源: https://codeday.me/bug/20191026/1937886.html