Grails3独立应用程序无法启动,因为SpringBean未注入引导

Grails3独立应用程序无法启动,因为SpringBean未注入引导,grails,grails-3.0,Grails,Grails 3.0,我无法启动独立应用程序(application.main)。它似乎没有实例化SpringBean,因此引导失败 import grails.util.Environment class BootStrap { def dynamoDBMapper def init = { servletContext -> dynamoDBMapper.getS3ClientCache().useClient(s3Client) } } 它在2.4.x中运行

我无法启动独立应用程序(
application.main
)。它似乎没有实例化SpringBean,因此
引导
失败

import grails.util.Environment

class BootStrap {

    def dynamoDBMapper

    def init = { servletContext ->
        dynamoDBMapper.getS3ClientCache().useClient(s3Client)
    }
}
它在2.4.x中运行良好,因此
dynamoDBMapper
可以自动连接。现在我得到一个空的
dynamoDBMapper
dynamoDBMapper
spring/resources.groovy
中定义


不熟悉弹簧靴。你能解释一下吗?

最终找到了解决方案,只需让Groovy编译器不要在grails app/conf下编译Groovy脚本,它们应该是资源


实际上,resources.groovy中定义的bean都没有实例化过。org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext被注入引导程序,引导程序似乎不知道我的应用程序定义的bean。我遗漏了什么吗?另一个更新。已找到问题,但正在等待解决方案。在
GrailsApplicationPostProcessor.class
@第146行
def beanResources=grailsApplication.mainContext.getResource(“classpath:spring/resources.groovy”)
中,它正在查找
resources.groovy
。然而,我的IDEGGTS将其编译成类文件,因此
resources.groovy
不存在。Gradle对待它很好,因为它被认为是“资源”文件,所以Gradle“运行”任务没有问题。