我们正在将grails 2.2.5应用程序升级到grails 3.1并且有一个有趣的错误。这意味着什么以及如何解决?
/myapp/grails-app/controllers/myapp/admin/AdminProjectController.groovy: -1:
The return type of java.lang.Object getGrailsApplication() in myapp.admin.AdminProjectController is incompatible with grails.core.GrailsApplication in grails.web.api.WebAttributes
. At [-1:-1] @ line -1, column -1.
答案 0 :(得分:9)
感谢burtbeckwith对此issue。
“Grails 2和Grails 3中的控制器已经有一个GrailsApplication的隐式依赖注入,所以你要添加第二个。在Grails 2中它不是键入的(def grailsApplication),但在Grails 3中它是键入的(GrailsApplication grailsApplication),所以你已经有效地添加了一个覆盖,但是具有一个不太具体的返回类型是无效的。只需删除你的def grailsApplication并使用已经存在的那个。“
如果您只是从所有控制器中删除def grailsApplication
,它将被修复。