一、该问题的重现步骤是什么?
点击PropsUtil.setProperty这个方法,可以看到逻辑:若参数不存在则进行设置。也就是说双斜杠配置后已经有参数了,PropsUtil.setProperty执行到那一步判断已经存在则跳过。所以会优先读取命令行的配置 这是之前给我的回复,我尝试调试了下代码
1. 设置了命令参数--spring.cloud.nacos.config.server-addr=192.168.x.x
2. 实际情况还是会执行props.setProperty 并把默认变量赋值进去127.0.0.1:8848
3. 如果是nacos的配置的确是优先使用了命令行,所以代码上应该不是这段代码,可否再次确认下 麻烦解答下,如果是dubbo的配置 目前命令行是无法生效的,因为我希望nacos和dubbo都可用命令行 后期能方便docker参数传递,否则将会很难受,盼解答
二、你期待的结果是什么?实际看到的又是什么?
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
四、请提供详细的错误堆栈信息,这很重要。
五、若有更多详细信息,请在下面提供。
在idea调试需要使用-D代替--,jar使用命令行可以用--,具体调试截图如下
idea和java -jar 启动是一样的,dubbo的服务 需要以下命令
java -jar -Ddubbo.register.address=nacose://192.168.1.10:8848 blade-dubbo-provider.jar --spring.profiles.active=dev --spring.cloud.nacos.config.server-addr=192.168.1.10:8848
这里的问题是Dockerfile打包的时候 CMD 是不能兼容 -D 和 -- 的 所以打包启动命令就得另外模式做了
扫一扫访问 Blade技术社区 移动端