Spring 云客户端未从 spring 云服务器获取配置
Spring Cloud Client not fetching configuraiton from spring cloud server
我是 Spring Cloud 的新手,我正在尝试使用存储在 git 集线器上的 属性 文件连接服务器和客户端。
我的服务器application.yml文件配置如下:
---
server:
port: 8888
spring:
cloud:
config:
server:
git:
uri: https://github.com/JonEasy/pluralsight-spring-cloudconfig-wa-tolls.git
#username: uname
#password: pass
search-paths:
- 'station*'
repos:
perf:
pattern:
- '*/perf'
uri: https://github.com/JonEasy/pluralsight-spring-cloudconfig-wa-tolls-perf.git
search-paths:
- 'station*'
github 回购链接在这里 Main Properties and Alternative Properties
我的客户端应用程序具有以下设置
spring.application.name=s1rates
spring.profiles.active=default
spring.cloud.config.uri=http://localhost:8888
spring.cloud.config.enabled= true
其余控制器是:
@Controller
public class RateController {
@Value("${rate}")
String rate;
@Value("${lanecount}")
String lanecount;
@Value("${tollstart}")
String tollstart;
@RequestMapping("/rate")
public String getRate(Model m) {
m.addAttribute("rateamount", rate);
m.addAttribute("lanes", lanecount);
m.addAttribute("tollstart", tollstart);
//name of the view
return "rateview";
}
}
所有 ${variables} 都可以在位于 git 存储库的属性文件中找到。
服务器运行正常,但客户端出现以下错误
Error creating bean with name 'rateController': Injection of autowired
dependencies failed; nested exception is
java.lang.IllegalArgumentException: Could not resolve placeholder
'rate' in value "${rate}"
另请注意,我的 spring 应用程序名称“s1rates”与 station1/s1rates.properties.
下我的主存储库中的属性文件匹配
有什么提示吗?
我遇到了同样的问题,发现 post 很有帮助。
但是我会在这里巩固我的发现。
确保您的 spring 云客户端具有正确的 pom.xml 文件。
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-parent</artifactId>
<version>2020.0.0</version>
</parent>
并添加依赖项
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>
休息所有在多个 post 中给出的属性,通常没问题。
例如在客户端bootstrap.properties文件
spring.application.name=s1rates
spring.profiles.active=default
spring.cloud.config.uri=http://localhost:8888
spring.cloud.config.enabled= true
我是 Spring Cloud 的新手,我正在尝试使用存储在 git 集线器上的 属性 文件连接服务器和客户端。
我的服务器application.yml文件配置如下:
---
server:
port: 8888
spring:
cloud:
config:
server:
git:
uri: https://github.com/JonEasy/pluralsight-spring-cloudconfig-wa-tolls.git
#username: uname
#password: pass
search-paths:
- 'station*'
repos:
perf:
pattern:
- '*/perf'
uri: https://github.com/JonEasy/pluralsight-spring-cloudconfig-wa-tolls-perf.git
search-paths:
- 'station*'
github 回购链接在这里 Main Properties and Alternative Properties
我的客户端应用程序具有以下设置
spring.application.name=s1rates
spring.profiles.active=default
spring.cloud.config.uri=http://localhost:8888
spring.cloud.config.enabled= true
其余控制器是:
@Controller
public class RateController {
@Value("${rate}")
String rate;
@Value("${lanecount}")
String lanecount;
@Value("${tollstart}")
String tollstart;
@RequestMapping("/rate")
public String getRate(Model m) {
m.addAttribute("rateamount", rate);
m.addAttribute("lanes", lanecount);
m.addAttribute("tollstart", tollstart);
//name of the view
return "rateview";
}
}
所有 ${variables} 都可以在位于 git 存储库的属性文件中找到。
服务器运行正常,但客户端出现以下错误
Error creating bean with name 'rateController': Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'rate' in value "${rate}"
另请注意,我的 spring 应用程序名称“s1rates”与 station1/s1rates.properties.
下我的主存储库中的属性文件匹配有什么提示吗?
我遇到了同样的问题,发现
但是我会在这里巩固我的发现。
确保您的 spring 云客户端具有正确的 pom.xml 文件。
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-parent</artifactId>
<version>2020.0.0</version>
</parent>
并添加依赖项
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>
休息所有在多个 post 中给出的属性,通常没问题。
例如在客户端bootstrap.properties文件
spring.application.name=s1rates
spring.profiles.active=default
spring.cloud.config.uri=http://localhost:8888
spring.cloud.config.enabled= true