我正在使用IntelliJ IDEA进行Grails项目。运行Grails 2.3.5。在域类上使用dirtyPropertyNames时,IntelliJ会给我一个警告,“无法解析符号'dirtyPropertyNames'”
这是我的代码:
def getDirtyProperties(User user) {
def dirtyProperties = user.dirtyPropertyNames
return dirtyProperties
}
这里有什么问题?谢谢。
答案 0 :(得分:3)
你需要一个更聪明的IDE :)方法就在那里,你知道因为代码运行了。它被添加到MetaClass中,因此通过反射无法看到它。 IDE必须对动态方法进行特殊处理,显然这个错过了。
答案 1 :(得分:1)
Settings -> Inspections -> Groovy ->
Probable bugs -> Access to Unresolved expression
取消选中,你应该做得很好。我不会仅为了取消检查而这样做,因为我不确定对其他检查会产生什么影响。 :)