springcloud引用@Value报错,Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder '
在使用组件注册到eureka的过程中,启动项目报错,显示找不到配置文件中的config配置的情况。我的项目使用了config组件集中管理所有其他组建的配置文件,但是在person组件中,即使在config组件配置了person组件需要的相关信息,但是person组件仍然报错。找不到,报错信息如下:org.springframework.beans.factory.BeanCreationE...
在使用组件注册到eureka的过程中,启动项目报错,显示找不到配置文件中的config配置的情况。
我的项目使用了config组件集中管理所有其他组建的配置文件,但是在person组件中,即使在config组件配置了person组件需要的相关信息,但是person组件仍然报错。找不到,报错信息如下:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'personController': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private java.lang.String com.weizhongcloud.person.controller.PersonController.name; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'config.person' in string value "${config.person}"
找了好久,在网上找到了原因,原来是maven引入的jar包有问题。
person是使用config配置文件中的配置信息,所以他应该在pom.xml中引入的jar应该为
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-client</artifactId> </dependency>
config组件作为管理配置文件的组件,他引入的jar包应为
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-server</artifactId> </dependency>
修改pom.xml文件之后,重启启动person组件,报错信息消失
更多推荐
所有评论(0)