Spring getEnvironment()

时间:2012-08-30 10:17:03

标签: spring

您好我想写一个使用Spring Profiles的简单示例,她就是代码。

 public static void main(String[] args) { 
 GenericXmlApplicationContext ctx = new GenericXmlApplicationContext(); 
 ctx.getEnvironment().setActiveProfiles("kindergarten"); 
 ctx.load("classpath:profile/*-config.xml"); 
 ctx.refresh(); 
 FoodProviderService foodProviderService =     
     ctx.getBean("foodProviderService", FoodProviderService.class); 
 List<Food> lunchSet = foodProviderService.provideLunchSet(); 
 for (Food food: lunchSet) { 
     System.out.println("Food: " + food.getName()); 
 } 

} 但奇怪的是,GenericXmlApplicationContext在它的API中没有getEnviroment()方法,所以第三行

ctx.getEnvironment().setActiveProfiles("kindergarten"); 

剂量不起作用。我的STS拒绝运行主要因为他认为这是一个sintax错误他给我这个消息:

Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
The method getEnvironment() is undefined for the type GenericXmlApplicationContext

任何想法?  感谢。

1 个答案:

答案 0 :(得分:1)

找到答案似乎我有3.0.6.RELEASE Spring版本但是3.1.3版本中添加的配置文件所以我需要做的就是转到我的pom.xml并更改它。

    <spring.framework.version>3.0.6.RELEASE</spring.framework.version>

到此

        <spring.framework.version>3.1.0.RELEASE</spring.framework.version>