我想更改默认的org.grails.plugins.tomcat.TomcatServerFactory 用户通过grails run-app与我的实现,但我无法做到。
查看源代码(grails 2.0.4),我在run-app脚本中看到了
的grails-芯/脚本/ _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传递它但是没有成功。
我的错误是什么?
谢谢
答案 0 :(得分: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