springboot引入远程nacos配置文件错误的解决方案
目录
- 错误信息
- 1. 引入依赖所需依赖
- 2. 远端nacos中的配置文件设置
- 3. 创建 bootstrap.yml
- 4. 测试是否导入配置成功
- 5. 测试成功
- 总结
错误信息
如下:
- springboot版本:
<spring-boot.version>2.7.6</spring-boot.version>
- springcloud版本:
<spring-cloud.version>2021.0.3</spring-cloud.version>
- springcloudalibaba版本:
<spring-cloud-alibaba.version>2021.0.5.0</spring-cloud-alibaba.version>
下面是解决上面问题的办法:
1. 引入依赖所需依赖
<dependencies> <dependency> js <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-bootstrap</artifactId> </dependency> </dependencies>
2. 远端nacos中的配置文件设置
3. 创建 bootstrap.yml
spring: application: name: nacos-config # 远程nacos的Data ID cloud: nacos: server-addr: 127.0.0.1:8848 # 远程nacos的ip地址 config: # namespace: 值为命名空间ID,不是命名空间名称 file-extension: yaml #指定远程文件的格式 # 如果服务名和远程的Data ID不同,可以通过以下方式来引入多个远程文件 ewww.devze.comxtension-configs: - data-id: mysql-config.ywww.devze.comml refresh: true -编程客栈 data-id: Redis-config.yml refresh: true
4. 测试是否导入配置成功
@SpringBootApplication public class NacosConfigApplication { public static void main(String[] args) throws InterruptedExcandroideption { ConfigurableApplicationContext context = SpringApplication.run(NacosConfigApplication.class, args); while (true){ String name = context.getEnvironment().getProperty("user.name"); String age = context.getEnvironment().getProperty("user.age"); System.out.println("name="+name+"\t age="+age); TimeUnit.SECONDS.sleep(2); } } }
5. 测试成功
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。
精彩评论