当我创建Grails应用程序时,它会在web-app目录中附带一些默认文件:
$ find web-app web-app web-app/css web-app/css/errors.css web-app/css/main.css web-app/css/mobile.css web-app/images web-app/images/apple-touch-icon-retina.png web-app/images/apple-touch-icon.png web-app/images/favicon.ico web-app/images/grails_logo.jpg web-app/images/grails_logo.png web-app/images/leftnav_btm.png web-app/images/leftnav_midstretch.png web-app/images/leftnav_top.png web-app/images/skin web-app/images/skin/database_add.png web-app/images/skin/database_delete.png web-app/images/skin/database_edit.png web-app/images/skin/database_save.png web-app/images/skin/database_table.png web-app/images/skin/exclamation.png web-app/images/skin/house.png web-app/images/skin/information.png web-app/images/skin/shadow.jpg web-app/images/skin/sorted_asc.gif web-app/images/skin/sorted_desc.gif web-app/images/spinner.gif web-app/images/springsource.png web-app/js web-app/js/application.js
(META-INF和WEB-INF从输出中剪切的文件夹)
这些文件在我的应用程序造成混乱,并且还使用了常见的目录名css,images以及js,那我可能想用我自己的资源.
在过去我手动删除了这些,但是它们在运行后自行返回,grails upgrade在此过程中覆盖我自己的文件.
我看不出有任何理由保留这些文件.有什么我想念的吗?如果没有,我怎么能摆脱它们并确保它们永远不会回来?
根据Burt Beckwith的说法,对此的正确解决方案是不使用grails upgrade.显然,这不再是升级Grails应用程序的推荐方法,因为它实际上只做了两件重要的事情,那就是碰撞版本然后清理应用程序以便重新下载所有内容.
从该帖子开始,推荐的较小版本更改流程为:
- 编辑
application.properties并更新版本.- 然后运行
grails clean以清除过时的文件.- 最后运行
grails compile,它会问你是否要升级Hibernate和Tomcat插件(如果它们被列入BuildConfig.groovy).您也可以手动删除该文件夹下工作文件夹中的旧插件
$HOME/.grails.
Burt提供的另一个提示是:
这是如果添加甚至简单
grails.project.work.dir = 'target'到BuildConfig.groovy.然后,所有的插件都在那里,你可以删除整个目标文件夹,所有的插件都将被重新安装和/或更新,所有的类都将被重新编译.
重大更新的过程(例如将1.x应用程序升级到2.x应用程序)更复杂一些:
- 在新版Grails中创建一个新的空应用程序
- 在旧版Grails中创建一个新的空应用程序
- 使用空的旧版应用程序来区分您当前的应用程序 - 这将告诉您删除,添加和更改的内容.复制新文件,删除应删除的内容,然后重新执行所做的更改.请务必阅读中级Grails版本的发行说明和升级信息,以便了解如何进行新的更改 - 例如HSQLDB - > DataSource.groovy中的H2等.不要盲目地做出相同的更改.
希望这最终将在官方文档中记录,因为它有意义,因为升级过程太复杂而无法实现自动化.
但是,这并不能解释如何处理新的应用程序.当然,您可以简单地删除所有Grails特定的文件(我建议除非您使用脚手架).
另一种选择是将所有Grails特定的文件移动到某个子目录中,然后手动修改(和/或重命名)main布局,CSS文件和资源链接以指向这些新位置.
如果您仍想使用脚手架,我建议将main.gsp布局复制到scaffolding.gsp,并创建一个新的资源模块,仅用于包含所有默认CSS和JS要求的脚手架.然后运行grails install-templates,它将为您提供脚手架的基本视图模板.然后,您可以轻松更改布局并添加或更新正确的资源模块.
最后,一旦你以你想要的方式获得了基本应用程序,请将其压缩并保存以供日后使用.这至少是一个只需要做一次这一切的简单方法.
注意
安装模板后,你可能不会需要artifacts或war模板文件夹中,位于下src/templates.除非您知道使用它们,否则应删除它们.
最后要注意的是,请确保使用良好,强大的版本控制系统,例如git或mercurial.如果您不小心运行grails upgrade,这将使您可以轻松查看已修改的内容,并放弃或回滚您不想更改的文件.使用体面的IDE或GUI,您通常只需点击几下即可解决此问题.
| 归档时间: |
|
| 查看次数: |
983 次 |
| 最近记录: |