Groovy MissingPropertyException для конечного статического свойства - PullRequest
0 голосов
/ 20 марта 2019

Исключением является то, что я получаю:

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 :

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) «отклонено», я не могу найти ни одной причины, в то время как три других свойства представлены как решение (EISSN, PISSN и ISSN). Тем не менее, нет абсолютно никакой разницы в обработке свойств в коде. (Для следственных: проект здесь ).

Очевидно, пятое свойство DOI также не предусмотрено в качестве решения. Но это связано с большими правописанием, чем с тремя другими свойствами. Я вижу, что он существует в отладчике. (EISBN не отображается в отладчике.)

Более того, тот же код выполняется на компьютере моего коллеги - и раньше он работал на моей машине. Исключение произошло внезапно. Поэтому я предполагаю, что проблема находится в области компилятора.

Итак, мой вопрос: кто-нибудь сталкивался с подобной проблемой? Какие-либо предложения? Большое спасибо, ребята!

1 Ответ

1 голос
/ 20 марта 2019

как только он получит grails, для каждого класса будет происходить динамическая пошаговая компиляция.

и есть вероятность такого поведения.

попытаться очистить и восстановить весь проект.

...