簡體   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