Grails 2.4.4配置scaffolding插件后访问person路径无内容如何解决?
Grails 2.4.4 脚手架插件加载失败问题解决方案
问题根因定位
当前配置存在依赖重复声明、可能缺少仓库配置的问题,按以下步骤依次排查修复:
步骤1:清理重复依赖
Grails 2.x版本中,官方插件仅需在plugins块声明即可,同时在dependencies和plugins块重复声明scaffolding插件,会导致依赖冲突。
删除dependencies块中的如下配置:
compile "org.grails.plugins:scaffolding:2.1.2"
仅保留plugins块中的compile ":scaffolding:2.1.2"配置即可。
步骤2:检查仓库配置
打开BuildConfig.groovy,确认repositories块中包含以下官方仓库配置,缺少则会导致插件无法正常拉取:
repositories { grailsPlugins() grailsHome() grailsCentral() mavenCentral() }
步骤3:深度清理缓存并刷新依赖
仅删除项目target目录无法解决缓存的依赖冲突,执行以下操作:
- 运行命令
grails clean-all清理项目编译产物和本地缓存的项目依赖 - 运行命令
grails compile --refresh-dependencies强制重新拉取所有依赖 - 观察编译控制台输出,确认存在
Loaded plugin scaffolding 2.1.2的日志,说明插件已正常加载
步骤4:验证功能
启动项目后,检查控制台输出的Controller映射日志,确认存在person控制器的映射规则,访问对应路径即可看到脚手架生成的CRUD页面。
额外注意:确保DataSource.groovy中开发环境的数据源配置正确,可正常连接数据库,否则脚手架读取域类元数据失败也会导致页面空白
内容的提问来源于stack exchange,提问作者Adam
相关产品推荐
相关产品推荐

