@Value读取配置文件报Could not resolve placeholder 'rabbitmq.host' in value'${rabbitmq.host}'或null的问题

1.异常原因:无法解析占位符${rabbitmq.host}的值;找不到配置文件application.yml中的rabbitmq.host属性

我的是springcloud-config-client中读取不到springcloud-config-service中配置信息:

解决思路:
	1.检查springcloud-config-service和springcloud-config-client依赖是否导入,是否正确;
			 
		        
		            org.springframework.cloud
		            spring-cloud-config-server
		        
		        
			     
					org.springframework.cloud
					spring-cloud-config-client
				
	2.检查配置属性路径是否完整,空格是否正确(我的问题出现在这儿)
			完整路径是:spring.rabbitmq.host
				@value("${spring.rabbitmq.host}")  
				问题解决

2.@value报null的问题

一般这种情况出现在springboot项目测试类中@Value(“配置文件”)注入,@Test方法中得到null;
问题出现的原因:当前测试类,不是一个springboot工程,@Test启动时不会加载配置文件

解决思路:
	将当前测试类以springboot工程启动:加上两个注解@SpringBootTest,@RunWith(SpringRunner.class)
		@SpringBootTest
		@RunWith(SpringRunner.class)
		public class MyTest {
		    @value("${spring.rabbitmq.host}") 
		    private String name;
		    @Test
		    public void myTest(){
		        System.out.println(name);
		    }
		}

	问题解决

你可能感兴趣的:(springCloud)