微服务读取nacos配置时出错
今天微服务做为doccker发布的时候,一直提示读取配置出错,但是这个微服务在ideal直接调试
通过docker logs containid 查看以后容器的启动日志
发现
配置好的地址是192.168.133.141,但是获取的还是测试机器上的192.168.2.1 。
而192.168.2.1 是测试机的ip地址了。
192.168.133.141 是另一台测试机的ip地址。
判断原因应该是 地址没有更改。
但是查看bootstrap.propertis 和application.properties两个配置文件。 读取配置的节点
spring.cloud.nacos.config.server-addr=192.168.133.141:8848
说明已经更改了。但为不知道为啥还是显示原来测试机的ip地址。
关于配置文件只有这两个资源文件。
并且把开发机上的ip地址都更改了。重新发布,也还是显示 192.168.2.1 原测试机的ip地址。
通过以上的现象判断 可能是引用的jar包可能会引起这个问题。
所引用的jar包采用二分查找分,一一删除,替换,
最后发现当去除一个名为:produceservice.jar以后, ip地址就变更为新的测试机的ip地址了。
用7zip打个这个jar包,果然发现这个jar包里有一个bootstrap.propertise这个配置文件。并且显示的是老的测试机的ip地址 192.168.2.1 。
更改过来以后。直接把这个jar包拷贝到容器中指定的位置 ,重启容器,查看日志,
一切正常 。
有一个问题就是当时已经把代码里相关老测试机的ip地址192.168.2.1 都改成了192.168.133.141 ,重新打包还是不对。
造成这个问题的原因 是重新更改以后打包的程序因为原来已经有jar包的存在所以重新打包的时候 没有更改
这个时候执行maven clean再打包就可以解决这个问题。
还不快抢沙发