我忘记关闭其中一个GSP文件中的<g:link>
标记。
应用程序与grails run-app
完美匹配,但当我尝试执行grails war
时,它表示标记未关闭。
构建与运行应用程序时不同的WAR文件会发生什么?
修改
由于 lukelazarovic 的回答,我看起来更详细,发现未封闭的标签来自我的应用使用的插件中的布局GSP。 run-app
命令似乎只编译我的GSP文件,而不是编译插件。因此,当您执行grails war
时,布局GSP中的编译错误就会出现。
答案 0 :(得分:2)
使用grails run-app
运行应用时,GSP会在您访问时动态编译。
如果访问带有未关闭标记的GSP,您将看到错误。
如果是grails war
,则必须编译所有GSP并将其放入生成的war文件中,因此会显示任何阻止编译任何GSP的错误。