将Grails 3插件中的doWithSpring作为子项目

时间:2016-06-03 12:45:41

标签: grails gradle grails-plugin

我有一个用Gradle构建的项目,有3个子项目:拖网渔船,适应性,临街。 Trawler是Groovy / Java,adaptrice是Grails 3.1.7应用程序,frontage是adaptrice使用的Grails 3插件。

顶部 settings.gradle 表示include 'trawler', 'adaptrice', 'frontage' adaptrice / build.gradle 包含,

grails {
  plugins {
    compile project(':frontage')
  }
}

所有这些都是根据Grails文档。一切都有效 - 差不多。插件描述符(类doWithSpring)中的FrontageGrailsPlugin方法如下所示,

Closure doWithSpring() { {->
  entityPropGrabberFactory(EntityPropGrabberFactory) {
    constraintsEvaluator = ref(ConstraintsEvaluator.BEAN_NAME)
    proxyHandler = ref('proxyHandler')
  }
}}

当我为adaptrice Grails应用程序运行应用程序时,它永远不会被执行。当使用假定注入的bean时,有一个NPE。如果我将doWithSpring的主体移动到adaptrice Grails应用程序的 ... / spring / resources.groovy ,那么它确实有效。

所以我的问题是,是什么导致Grails 3插件描述符中的doWithSpring被执行?当插件也是一个子项目时,我还需要做些什么吗?

0 个答案:

没有答案