我试图将我的项目从Grails 2.4移植到3.0。没什么特别的:12个域名,13个控制器和一个服务。 一切正常,除非我尝试包含Scaffolding插件。我实际上遵循手册here,但语法必定是错误的。按指定添加插件行:
plugins {
…
compile ":scaffolding:2.0.0"
…
}
导致这个:
BUILD FAILED
Total time: 1.559 secs
| Error Error initializing classpath: startup failed:
build file 'E:\GrailsIdeaProjects\HcaServer\build.gradle': 17: only id(String) method calls allowed in plugins {} script block
See http://gradle.org/docs/2.3/userguide/plugins.html#sec:plugins_block for information on the plugins {} block
@ line 17, column 5.
compile ":scaffolding:2.0.0"
^
1 error
(Use --stacktrace to see the full trace)
有人知道在Grails 3中包含Scaffolding插件的正确语法吗?
编辑:感谢Casey指出我正确的方向:Scaffolding插件实际上已经包含在默认的build.gradle中。无论如何,我仍然在每个控制器上都有这样的网页:Error: Page Not Found (404)
Path: /*controllerName*/index
我一直在使用与手册相同的语法,在每个控制器上声明static scaffold = true
。为什么我会得到404页呢?我的视图文件夹中有index.gsp,error.gsp和notFound.gsp。
答案 0 :(得分:3)
看起来尚未为Grails 3.0更新文档。您的build.gradle
文件应该有一个dependencies
块,您可以在其中指定依赖项:
dependencies {
// ...
runtime "org.grails.plugins:scaffolding"
}
您还可以通过使用Grails 3.0创建新应用并查看默认的build.gradle
文件来查看此内容。
答案 1 :(得分:2)
经过一段时间的研究,结果动态脚手架还没有进入Grails 3: https://groups.google.com/forum/m/#!topic/grails-dev-discuss/6R2YaF96Uts
答案 2 :(得分:0)
试试这个,它适合我。
dependencies {
compile "org.grails.plugins:scaffolding"
}
我使用的是grails 3.09。