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

owfi6suc  于 2021-07-12  发布在  Java
关注(0)|答案(3)|浏览(361)

我正在开发一个spring-boot应用程序,我使用的是spring-boot版本: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。任何关于如何做到这一点的建议都会很有帮助。
更新:应用程序无法启动,因为其中一个服务类依赖于我尝试创建的bean。
提前谢谢。

7ajki6be

7ajki6be1#

在你的笔记里
https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/context/annotation/profile.html
使用指向相同bean名的不同java方法名

nr7wwzry

nr7wwzry2#

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

8nuwlpux

8nuwlpux3#

我认为问题是相同的方法名。出于某种原因,如果我使用相同的名称(方法重载),我们就会遇到问题。找到了一个类似的线索来解释相同的问题。
非常感谢所有试图解决这个问题的人。
注意:我将试图找到线程,并将更新线程在这里解释相同的。

相关问题