Mysql 战争包装错误Grails2.3.4

Mysql 战争包装错误Grails2.3.4,mysql,grails,war,Mysql,Grails,War,我使用的是Grails2.3.4,mysql是mysql:mysql连接器java:5.1.24',有163个gsp文件,每次我以war或任何其他方式运行脚本来创建war文件时,它都会显示以下错误 .Error | WAR packaging error: encoded string too long: 70621 bytes 没有任何gsp文件超过64kb,我已经在buildconfig.groovy中注释了grails.project.fork,但我仍然遇到问题,请帮助 我怀疑这是你想

我使用的是Grails2.3.4,mysql是
mysql:mysql连接器java:5.1.24'
,有163个gsp文件,每次我以
war
或任何其他方式运行脚本来创建war文件时,它都会显示以下错误

.Error 
|
WAR packaging error: encoded string too long: 70621 bytes

没有任何gsp文件超过64kb,我已经在
buildconfig.groovy
中注释了
grails.project.fork
,但我仍然遇到问题,请帮助

我怀疑这是你想要看到的答案:)我无法想象你有什么好理由接近普惠制的最大规模。你甚至不应该知道这个数字是多少,只是它比你所需要的要高得多

在这些巨大的页面中,要么有大量的代码,要么有大量的HTML(或者两者兼而有之)。有很多明显的策略可以让你的GSP节食。使用taglibs将大量代码(在GSP中根本不应该使用这些代码,这不是PHP)从视图呈现层移动到它所属的控制器和服务层。您可以将静态和大部分静态HTML块提取到includes/templates

这里可能也有很多重复的工作-如果没有大量的复制,很难获得这么多这么大的文件。当一个文件变得非常大时,我们就很难保持对文件所在位置的整体感觉——我们的大脑在过载之前只能处理一定数量的数据。你也倾向于把小东西放错地方,在里面吃了一部分午餐,这只会让事情变得更糟


如果您没有时间进行项目可能需要的重大重构,如果您已经偏离了轨道,那么即使是快速简单地移动到标记库和模板,而不考虑如何正确地设计工作,也会让事情进展顺利。至少在您再次达到极限之前:)

可能有一个以前构建的遗留工件。你试过grails clean all吗?否则,您可以通过查看项目的工作目录并查看哪些文件实际正在编译来判断它正在通过消除过程破坏哪个文件。我尝试过grails clean all,但它不工作,工作目录中只有101个gsp文件,但总体gsp文件是163。我如何解决这个问题?请帮忙谢谢你的回复,答案很有帮助。