1

鉱山の実装を使用してgrailsrun-appでデフォルトのorg.grails.plugins.tomcat.TomcatServerFactoryユーザーを変更したいのですが、変更できませんでした。

ソースを見る(grails 2.0.4)run-appスクリプトで見る

grails-core / scripts / _GrailsRun.groovy

93    String defaultServer = "org.grails.plugins.tomcat.TomcatServerFactory"
94    def containerClass = getPropertyValue("grails.server.factory", defaultServer)

私は私のクラスでgrails.server.factoryを設定しようとしましたが、それは単にgrailsによって無視されているようです。

configurazioneをBuildConfingに配置するか、-Dを実行するGrailsを使用して渡すことをテストしましたが、成功しませんでした。

私の間違いは何ですか?

ありがとうございました

4

1 に答える 1

1

問題は、Tomcatプラグインが、コマンドラインから値を読み取った後に値を強制することです。scripts/_Events.groovy

Tomcatプラグインの後で、使用される前に起動するイベントハンドラーに設定することで、機能させることができます。

eventRunAppStart = {
   System.setProperty 'grails.server.factory', 'my.class.name'
}

動的に保ちたい場合は、その値を独自のシステムプロパティに設定できます。

eventRunAppStart = {
   System.setProperty 'grails.server.factory',
         System.getProperty('my.grails.server.factory')
}

run-app呼び出しをに変更します

grails -Dmy.grails.server.factory=my.class.name run-app
于 2012-06-01T18:38:26.823 に答える