2016-02-11 19 views
1

我有一個Spray應用程序,我想針對不同的配置文件運行。在我的資源文件夾中,我有一組配置文件爲:噴塗應用程序對配置運行

resources 
    application.conf 
    application.integration.conf 
    application.uat.conf 

藉助Play框架,我通常把這些文件conf文件夾裏面,我也下運行應用程序:

sbt -Dconfig.file=conf/application.uat.conf run 

我該如何使用Spray應用程序結構來做到這一點?

此外,我怎麼能罐子使用SBT這樣我就可以將其部署到特定的環境,只是有一個腳本,負責啓動和停止噴霧HTTP服務器的噴塗?

回答

1

我不知道你究竟是如何打包和部署應用程序,但你可以試試這個:在默認情況下,application.conf將有所回升。此外,您可以在與config.file類似的方式使用config.resource屬性運行您的應用時覆蓋它。此外,您可以針對不同的環境進行特定的配置,並且可以包括application.conf

所有這些細節都是阿卡文檔中明確:http://doc.akka.io/docs/akka/2.4.1/general/configuration.html#Including_files

至於包裝,你有幾種選擇;兩個不錯的候選人是sbt assemblysbt-native-packager插件。

+0

酷!我不得不做-Dconfig.resource而不是-Dconfig.file – sparkr

+0

我使用sbt-assembly! – sparkr

+0

@spark然後它很簡單:我通常做的是打包fat jar中的通用配置,然後使用包含適當環境配置的外部配置文件,幷包含所有節點特定的詳細信息。這個外部配置用'config.resource'屬性加載。 – ale64bit

相關問題