0

次のような環境変数を設定しました。

APP_HOME = "c:\app\app-datasource.properties

config.groovy で私は

def ENV_NAME = "APP_HOME"
    if(!grails.config.location || !(grails.config.location instanceof List)) {
    grails.config.location = []
    }
    if(System.getenv(ENV_NAME)) {
    println "Including configuration file specified in environment: " + System.getenv(ENV_NAME);
    grails.config.location << "file:" + System.getenv(ENV_NAME)

    } else if(System.getProperty(ENV_NAME)) {
    println "Including configuration file specified on command line: " + System.getProperty(ENV_NAME);
    grails.config.location << "file:" + System.getProperty(ENV_NAME)

    } else {
    println "No external configuration file defined."
    }

grails.config.locationオンラインの投稿からこれを入手しました。またはgrails.config.locations?を使用する必要があるかどうかを知りたいです。APP_HOMEまた、プロパティ ファイルに直接設定する代わりに、ディレクトリ パスに設定して、(e.g.: c:\apps)そのディレクトリに複数のプロパティ ファイルを配置することはできますか?

    grails.config.locations << "file:" + System.getProperty(ENV_NAME)+ "\app-datasource.properties"
    grails.config.locations << "file:" + System.getProperty(ENV_NAME)+ "\app-reporting.properties"
and so on...

前もって感謝します

4

1 に答える 1

1

grails.config.locations(複数)を変更する必要があります。私の(非常に限られた)経験によると、外部ファイルはおそらくConfig.groovy完了後までロードされません。

クラスパスで追加の構成ファイルを探すことを検討してください。grails-app/confその後、エクストラを Grails プロジェクトの外 (たとえば、Web サーバーのライブラリ) またはディレクトリ内に置くことができます。私はそれを行う方法についての指示をここに書きました。

プラグインからそれを行う方法に関する投稿は次のとおりです: https://stackoverflow.com/a/9789506/1269312

于 2012-03-26T13:26:31.700 に答える