2012-06-01 2 views
1

Я хочу изменить значение по умолчанию org.grails.plugins.tomcat.TomcatServerFactory пользователя grails run-app с реализацией мины, но я не смог этого сделать.Замена по умолчанию TomcatServerFactory

Глядя на источник (Grails 2.0.4) я вижу в перспективе-приложение сценария

Grails-ядро/скрипты/_GrailsRun.groovy

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

Я попытался установить grails.server.factory с классом шахт, но это просто игнорируется граалями.

Я протестировал установку конфигурации в BuildConfing или передал ее с -D бегущими граалями, но безуспешно.

Какая у меня ошибка?

Спасибо

ответ

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') 
} 

и изменить выполнения приложения вызов

grails -Dmy.grails.server.factory=my.class.name run-app 
+0

прекрасно работает ... Спасибо Burt :) –

Смежные вопросы