我正试图从Grails In Action网站运行Grails应用程序。我已经将"hubhub"项目导入GGTS应用程序,并遇到了构建错误。该项目最初是用Grails 2.3.7构建的,而我的系统上有2.4.4版本。基于另一个堆栈溢出问题,我已将application.properties文件中的"app.grails.version"更改为grails 2.4.4版本,这促使在命令提示符下进行了一系列下载,最终出现了一系列与插件问题有关的错误。我无法运行该应用程序,因为我被告知"项目'hubbub'缺少必需的源文件夹:grails app/utils"。如果我试图将"app.ggrails.version"更改回2.3.7,我会被告知需要配置2.3.7的grails安装。
我在升级这个Grails项目的过程中做错了什么吗?或者我真的必须安装Grails 2.3.7才能让它工作吗?
(对不起,我还没有发布关于插件下载的错误,但我似乎无法重新创建它们)。
提前感谢!
Grails 2.4比2.3有很大的变化,主要是由于使用了资产管道而不是资源。
此外,仅仅更改application.properties
中的版本是不够的,您还需要实际运行匹配的Grails框架。
请参阅此处,将应用程序从2.3升级到2.4:http://grails.github.io/grails-doc/2.4.x/guide/upgradingFrom23.html。根据经验,从旧版本升级Grails应用程序必须手动完成。一个原因是upgrade
命令已过时,并且已被删除。阅读文档中关于中断更改的内容,并在代码中单独处理每个更改。升级补丁级别(通常)没有问题,但升级次要版本和主要版本通常需要大量工作。
既然你在学习,我会坚持2.3.7作为你的练习(这意味着你必须运行2.3.7,而你没有这样做)。你将学到的东西仍然有效。从头开始构建自己的项目时,请使用2.4.4。
如果您的项目只缺少grails app/utils,请尝试创建它。查看您的项目属性->构建路径。已定义所有源文件夹。它可以帮助