2017-07-07 8 views
0

Grails 3アプリからデプロイメント固有の設定を分離する方法を理解しようとしています。 Grails 2では、私のdev固有の設定ファイルをロードするconfigの場所検索をセットアップすることができました。私はそれだけでするよう、以下のようなプラグインを、使用している場合しかし、これは動作しませんプラグインのGrails設定を無効にする

./grailsw -Dspring.config.location=classpath:application.yml,file:///home/nigel/src/app/dev.yml run-app 

:とGrails 3に私はアプリ、すなわちを実行しているとき、私は追加の春のコンフィグを提供できることを見出しましたGrailsのアプリ/ confに/ application.ymlで設定を使用:

./grailsw -Dspring.config.location=classpath:application.yml,file:///home/nigel/src/app/dev.yml url-mappings-report 

だから私の質問ですが、それはGrailsのプラグインで動作するように、私はGrailsのに展開/ devの特定の設定ファイルを提供しますか。

答えて

0

grails 3では、external configプラグインを使用できます。また、設定場所を設定します。

grails.config.locations = ["classpath:myconfig.groovy"] 
+0

最も柔軟性の高いアプローチであるJVMパラメータとして渡すのではなく、application.ymlファイルにgrails.config.locationsパラメータを設定すると、このような動作が得られます。 これで、プロジェクトのホームディレクトリを指すために使用する必要がある変数置換は何ですか?私は$ {project.home}と$ {grails.home}を試しましたが、どちらも動作しません。 ピンチで私は提案されたようにクラスパスを使用することができましたが、クラスパス上に "外部"設定を持つことは、直観に反するようです。 – Nigel

+0

warを実行するとき、プロジェクトのホームディレクトリはありません。プロジェクトのホームディレクトリを使うべきではなく、クラスパスかユーザのホームディレクトリ、またはcatalinaベースディレクトリのどこかにあるファイルで、これらすべてがサポートされています。プラグインの –

0

このタスクでは、Grails 3 external configプラグインを使用してください。 build.gradleに依存関係を追加します

  1. このプラグインを模倣はgrails.config.locations

    ステップで定義された外部構成を扱う2つの方法をGrailsの。

  2. 新しいローカル設定のGroovyスクリプトを作成し、上書きする設定を追加します。

  3. applicatin.ymlまたはapplication.groovyに外部構成プロパティを追加し、ローカル構成ファイルへのパスを指定します。

これだけです。

関連する問題