【Spring Cloud】spring-cloud2020和spring-cloud-alibaba2021問題記錄
下面是使用的版本信息
<!-- spring-boot 版本號 --> <spring-boot.version>2.5.2</spring-boot.version> <!-- spring-cloud 版本號 --> <spring-cloud.version>2020.0.3</spring-cloud.version> <!-- spring cloud alibaba 版本 --> <spring-cloud-alibaba.version>2021.1</spring-cloud-alibaba.version> <!-- alibaba nacos 版本 --> <alibaba.nacos.version>2.0.2</alibaba.nacos.version>
1、bootstrap.yml文件不生效
官方文檔 https://docs.spring.io/spring-cloud-config/docs/current/reference/html/#config-first-bootstrap
spring-cloud-dependencies 2020.0.0 默認不在加載bootstrap配置文件,如果項目中要用bootstrap配置文件需要手動添加spring-cloud-starter-bootstrap依賴,不然啟動項目會報錯的。
設置在環境變量或啟動指定
spring.cloud.bootstrap.enabled=true
java -jar -Dspring.cloud.bootstrap.enabled=true gateway.jar
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-bootstrap</artifactId> </dependency>
2、gateway lb://服務報錯503 Service Unavailable
由於springcloud2020棄用了Ribbon,因此Alibaba在2021版本nacos中刪除了Ribbon的jar包,因此無法通過lb路由到指定微服務,出現了503情況。所以只需要引入springcloud loadbalancer包即可
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-loadbalancer</artifactId> </dependency>