繁体   English   中英

Spring 引导:特定于 bean 创建配置文件

[英]Spring boot : bean creation profile specific

我正在开发 spring 引导应用程序。我正在使用 spring 引导版本:2.2.4-RELEASE

我正在尝试创建一个特定于配置文件的 bean。但是 bean 没有按预期创建。

下面是我的配置文件:

@Configuration
@Slf4j
public class TestConfig {

  //below is the bean i need to be created for dev and test
  @Bean
  @Profile({“dev”, “test”})
  TestObject getTestObject() {

        //do something
  }

//below is the bean i need to be created for staging and prod
  @Bean
  @Profile({“staging”, “prod”})
  TestObject getTestObject() {

        //do something
  }


//someother beans common for all profiles

}

服务.java

@Service
public class Serviceclass {

  @Autowired
   private TestObject testObj;

   //some methods

}

我尝试了上述方法,但没有为任何配置文件创建 bean。 关于如何实现这一目标的任何建议都会有所帮助。

更新:应用程序无法启动,因为 class 服务之一依赖于我要创建的 bean。

提前致谢。

您必须为应用程序激活配置文件。 您可以将运行时参数作为-Djava.profiles.active=dev传递。 它会解决你的问题。 此外,需要创建特定于环境的属性文件,例如application-{env}.properties

我认为问题是相同的方法名称。 出于某种原因,如果我给出相同的名称(方法重载),我们就会遇到问题。 找到了一个类似的线程,解释相同。

非常感谢所有试图解决这个问题的人。

注意:我将尝试找到该线程并将在此处更新该线程以解释相同的内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM