gpt4 book ai didi

grails - “grails clean”脚本实际上做什么?

转载 作者:行者123 更新时间:2023-12-03 11:42:19 28 4
gpt4 key购买 nike

我对grails clean命令很好奇。将错误的程序包导入域类后,它就是java.util.regex。我用它来做一个正则表达式替换命令,但事实证明一切都没有改变,因此我以为我的正则表达式是错误的。但是我把它留在那里以便将来改进。

我的本地主机中的Web应用程序正常运行,但是随后其他程序员告诉我,他们在尝试编译我的代码时遇到了编译错误。我关闭了grails,然后再次启动它,但是它仍然可以正常运行。仅在运行grails clean之后,才会出现编译错误

因此,似乎该应用程序最初只是忽略了我的更改。他们在文档中说:

In case your Grails application has been screwed and comes up with mysterious error messages try:

grails clean



我对这个“神秘”的事情有些困惑。那么 grails clean实际做什么?除非调用 grails clean,否则不会重新编译哪些类型的资源?

最佳答案

干净的脚本将删除已复制到类dir的已编译的类和属性文件以及其他非源资源,以及其他内容,例如测试报告。

您看到的问题是增量编译。通常,它是相当可靠的,但是在Java中可能会失败,但是不幸的是,由于Groovy是动态语言,因此很有可能在Groovy中使用。很难在所有其他类上检测到一个类的更改的全部范围,有时更改会被遗漏。如果您很幸运,很明显有些地方出了问题,但有时可能要花点时间想知道为什么会发生一些严重的奇怪行为。

因此,最好的办法是始终进行完全编译,无论是纯Java还是Groovy与Java的混合。由于这很昂贵(尤其是在较大的项目中),因此尽可能多地使用增量编译就足够了,但有时会使用grails clean强制进行完全编译。

关于grails - “grails clean”脚本实际上做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4567986/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com