如何在更改视图后无需重新部署Grails应用程序设计器的友好性如何?

Ami*_*aja 5 grails gsp

自从我真正使用J2EE以来已经有很长一段时间了,请原谅我的无知.我最近参与Grails项目,再次引起了我对Java的兴趣,特别是在Grails中,因为它使得在Java平台上构建Web应用程序再次变得有趣.话虽这么说,我希望专家评论我对使用Grails构建的应用程序的以下要求:

设计团队(Web设计人员)需要访问GSP页面并编辑视图文件(布局,模板等),而无需打扰开发团队(软件开发人员).这种情况可以在构建期间和部署到生产之后进行.

设计人员,开发人员和业务用户之间的沟通水平不是问题.但是,大约40%的时间,业务部门涉及对前端的请求更改,这对开发人员的时间没有影响,但需要设计团队成员的时间.目前,部署工作流程遵循Grails应用程序,通过将War文件部署到Tomcat服务器.我想有一种更简单的方法可以让设计团队在不经过构建和部署生命周期的情况下进行UI更改.

一些设计团队成员过去曾接触过PHP,有时会错过覆盖模板文件以使UI功能更加实用或改进布局模板的能力.我希望在Grails中有类似的方式来适应这种简单性.有人告诉我,爆炸War文件可能是一个选项,但仍然需要重新加载Tomcat托管的应用程序.

如果您认为我以错误的方式查看所需的解决方案,请加入,因为我对所有相关团队成员的可行妥协感兴趣.谢谢.

Gra*_*her 10

您需要在Config.groovy中指定以下设置:

grails.gsp.enable.reload=true
grails.gsp.view.dir="/path/to/gsp/views"
Run Code Online (Sandbox Code Playgroud)

'grails.gsp.view.dir'通常是您签出SVN回购的路径.然后,每次想要更新视图时,您都可以'svn up'.

有一点需要注意:当编译GSP视图时,它会使用permgen.最终您将耗尽并需要重新启动服务器.


lee*_*tts 0

您可以在开发模式下通过 run-app 运行具有应用程序版本的服务器。然后设计者可以对视图进行更改,然后重新加载。他们需要能够通过某种共享访问服务器上的源代码。另外,如果您检查了源代码,设计人员就可以从服务器提交他们的更改。

缺点是,如果重新加载失败或内存不足(已知会在大量重新加载时发生),开发人员需要停止并启动应用程序,或者您可以为设计人员提供一个脚本来运行以弹回它。

显然,通过在开发模式下运行和通过运行应用程序运行,您会受到性能影响,但在您的情况下,这可能是一个不错的权衡。

干杯