Grails 2.0.0.RC3:无法重新加载对控制器的更改,java.lang.NoSuchFieldException:_时间戳__239_neverHappen1323622798918
自从我开始评估Grails2.0.0.RC3以来,最近一直出现这个错误。 我对控制器进行简单更改,然后保存 来自Grails 2.0.0.RC3:无法重新加载对控制器的更改,java.lang.NoSuchFieldException:_时间戳__239_neverHappen1323622798918,grails,grails-controller,Grails,Grails Controller,自从我开始评估Grails2.0.0.RC3以来,最近一直出现这个错误。 我对控制器进行简单更改,然后保存 来自pictureList.count(),它以某种方式在1.3.7中起作用,但在2.0.0RC3中不起作用 def tagged = { def pictureList = Picture.findAllByTag(params.id) render(view: 'list', model: [pictureInstanceList:pictureList
pictureList.count()
,它以某种方式在1.3.7中起作用,但在2.0.0RC3中不起作用
def tagged = {
def pictureList = Picture.findAllByTag(params.id)
render(view: 'list', model: [pictureInstanceList:pictureList,
tag:params.id, pictureInstanceTotal:pictureList.count()])
}
转到pictureList.size()
,因为pictureList的类型是ArrayList,所以这更有意义
def tagged = {
def pictureList = Picture.findAllByTag(params.id)
render(view: 'list', model: [pictureInstanceList:pictureList,
tag:params.id, pictureInstanceTotal:pictureList.size()])
}
我得到编译输出消息,让我知道发生了什么
| Compiling 1 source files
| Compiling 1 source files.
| Compiling 1 source files..
| Compiling 1 source files...
然后我重新加载页面,得到这个
| Error 2011-12-11 17:00:01,908 [Thread-7] ERROR plugins.AbstractGrailsPluginManager
- Plugin [controllers:2.0.0.RC3] could not reload changes to file
[/Users/gotomanners/Documents/Projects/sampleProject/grails-app/controllers/sampleProject/PictureController.groovy]:
java.lang.NoSuchFieldException: __timeStamp__239_neverHappen1323622798918
Message: java.lang.NoSuchFieldException: __timeStamp__239_neverHappen1323622798918
Line | Method
->> 632 | doCall in SpringSecurityCoreGrailsPlugin$_closure5
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
^ 680 | run in java.lang.Thread
Caused by NoSuchFieldException: __timeStamp__239_neverHappen1323622798918
->> 1882 | getDeclaredField in java.lang.Class
现在,从错误中恢复的唯一方法(我已经发现)是重新启动应用程序
有人遇到过这个问题吗??如果可能的话,我将尝试隔离问题,以便提交错误报告
我应该补充一点,这个应用程序最初是基于Grails1.3.7的,我最近将它升级到2.0.0RC1,现在升级到2.0.0RC3您是否使用Intellij Idea并使用它运行grails应用程序? 如果是这样,您可以尝试Idea提供的临时解决方案: 将enable.groovy.hotswap=false添加到/bin/idea.properties并重新启动idea
这为我解决了这个问题按cntl+alt+G并在Intellij Idea中运行clean命令。。它必须起作用 为我工作 如果不起作用,将add enable.groovy.hotswap=false添加到/bin/idea.properties,然后运行clean
也很有效 你试过在邮件列表上提问吗?我在2.0.0.RC3中也遇到过这个问题。如果您可以始终如一地复制它,我建议您提交一份bug报告,但这会阻止类的重新加载吗?如果是这样的话,这不是一个很大的帮助-这个问题是intelliJ 10中的一个bug。通过与grails一起使用命令行、使用上述解决方法或升级到Intellij 11,修复了此问题。通过将enable.groovy.hotswap=false添加到/bin/idea.properties,可以防止此问题,并且仍然允许grails动态地重新加载更改。很好的解决方法。