首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于最终静态属性的Groovy MissingPropertyException

关于最终静态属性的Groovy MissingPropertyException
EN

Stack Overflow用户
提问于 2019-03-20 16:19:53
回答 1查看 503关注 0票数 0

唯一的例外是:

代码语言:javascript
复制
groovy.lang.MissingPropertyException: No such property: EISBN for class: de.hbznrw.ygor.export.structure.TitleStruct
Possible solutions: EISSN, ISSN, PISSN
  at groovy.lang.MetaClassImpl.invokeStaticMissingProperty(MetaClassImpl.java:1007) at groovy.lang.MetaClassImpl.getProperty(MetaClassImpl.java:1862) 
  at groovy.lang.ExpandoMetaClass.getProperty(ExpandoMetaClass.java:1155) 
  at groovy.lang.MetaClassImpl.getProperty(MetaClassImpl.java:1838) 
  at groovy.lang.ExpandoMetaClass.getProperty(ExpandoMetaClass.java:1155) 
  at groovy.lang.MetaClassImpl.getProperty(MetaClassImpl.java:3763) 
  at groovy.lang.ExpandoMetaClass.getProperty(ExpandoMetaClass.java:1167) 
  at org.codehaus.groovy.runtime.callsite.ClassMetaClassGetPropertySite.getProperty(ClassMetaClassGetPropertySite.java:51) ...

TitleStruct的代码是:

代码语言:javascript
复制
class TitleStruct {    
    static final ISSN  = 'issn'
    static final EISSN = 'eissn'
    static final PISSN = 'issn'
    static final EISBN = 'isbn'
    static final DOI = 'doi'

    // plus some getters
}

这不是很奇怪吗?这些final static属性(EISBN)中的一个被“取消”,没有任何理由我可以找到,而其他三个属性是作为解决方案提供的(EISSNPISSNISSN)。但是,在代码中属性的处理绝对没有区别。(对于调查项目:项目是这里)。

显然,第五个属性DOI也不是作为解决方案提供的。但这是因为与其他三个属性相比,拼写差异更大。我可以看到它存在于调试器中。(EISBN是在调试器中不可见的,而不是。)

更重要的是,同样的代码运行在我同事的计算机上--而且它以前一直运行在我的机器上。异常突然发生。因此,我假设问题位于编译器区域。

那么,我的问题是,有没有人经历过类似的问题?有什么建议吗?非常感谢,伙计们!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-20 17:12:31

一旦是grails,就会对每个类进行动态增量编译。

这种行为是有可能的。

努力清理和重建整个项目。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55265558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档