Я не понимаю общую цель.
resources.groovy может использоваться для определения бинов. MyService, потому что Grail будет автоматически «везде» вводиться, поэтому вы можете получить к нему доступ просто:
def myService
Затем вы можете вызывать методы на myService, обычно на вашем контроллере.
Если вы пытаетесь определить «настройки приложения», то Config.groovy - вот, куда я понимаю, он должен идти:
icooeee {
defaultCategory = "lifestyle"
}
И прочтите это в контроллерах Grails, службах и т. Д .:
ConfigurationHolder.config.icooeee.defaultCategory
Если вы хотите инициализировать объект bean-java, который определен как src / java, в плагине или библиотеке. Тогда аргументы конструктора имеют смысл согласно документации grails, о которой вы говорите: http://grails.org/doc/1.0.x/guide/14.%20Grails%20and%20Spring.html
Дизайн, управляемый MVC / доменом, говорит, что объекты домена Grails должны поддерживать данные и логику, относящиеся к данным. Поэтому учитывайте это при сохранении состояния, относящегося к услугам.
Я успешно настроил bean-компоненты для apache-camel в resources.groovy. Обратите внимание, что они инициализируют базовые объекты верблюда apache, а не объекты grails, которые обычно предоставляются «бесплатно»:
case "development":
jmsConnectionFactoryLocal(org.apache.activemq.ActiveMQConnectionFactory) {
brokerURL = 'vm://localhost'
}
_jmsConnectionFactory(ActiveMQConnectionFactory) {
brokerURL = ConfigurationHolder.config.caller.activemqServer
}
jmsConnectionFactory(org.apache.activemq.pool.PooledConnectionFactory) {
connectionFactory = ref('_jmsConnectionFactory')
}
jmsConfig(org.apache.camel.component.jms.JmsConfiguration) {
connectionFactory = ref('_jmsConnectionFactory')
transacted = true
concurrentConsumers = 10
}
activemqServer(org.apache.activemq.camel.component.ActiveMQComponent) {
configuration = ref('jmsConfig')
}
break