记一下今天花了很多时间在nacos配置上,出乎意料的多,下次配置nacos要回来看看:
看了看nacos cloud的文档,按照上面写:
结果报了多次Could not resolve placeholder ‘config.info‘ in value “${config.info}
一眼看好像很简单,其实里面有很多层机关:
第一层机关:新版的nacos-config需要额外引入boostrap
spring-cloud-starter-alibaba-nacos-config:2021.0.1.0内部不带spring-cloud-starter-bootstrap
旧版的不用比如用org.springframework.cloud的spring-cloud-starter-alibaba-nacos-config
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.6.3</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-bootstrap -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
<version>3.0.6</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.alibaba.cloud/spring-cloud-starter-alibaba-nacos-config -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>2021.0.1.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.15.2</version>
</dependency>
</dependencies>
第二层机关:
使用application.yml或者application.properties 配置nacos某些属性不好使,比如
file-extension: yaml
配置了后发现读取的还是properties配置文件,然后换成用boostrap.yml(优先用)就好了
如果是正常启动,控制台会打印如下信息,那就在nacos页面配置相关文件即可
ps:project-production-dev.yaml比project-production.yaml优先加载
建议先启动nacos和本地服务,控制台打印无误后在配置中心新建nacos配置
nacos配置如下