Groovy: видимая переменная xyz была обнаружена в статической области видимости, но не ссылается на локальную переменную, статическое поле или класс. Возможные причины:
Я получаю эту "ошибку" в Spring Tool Suite для всех классов моего домена. Это на самом деле не ошибка, потому что он компилируется нормально. Но он маскирует реальные ошибки компиляции, как я могу от него избавиться? Они находятся в одном пакете, поэтому мне не нужен импорт, если я добавляю импорт, он говорит, что не может найти класс...
Таким образом, следующий код производит красный х
Groovy: видимая переменная ExampleB обнаружена в статической области видимости, но не ссылается на локальную переменную, статическое поле или класс. Возможные причины:
package domain.com.so;
class ExampleA {
static belongsTo = [exampleB: ExampleB]
static constraints = {
}
}
И этот код выдает ошибку:
Groovy: видимая переменная "ExampleA" найдена в статической области видимости, но не ссылается на локальную переменную, статическое поле или класс. Возможные причины:
package domain.com.so;
class ExampleB {
static hasMany = [exampleAs: ExampleA]
static constraints = {
}
}
2 ответа
Обычно, когда STS жалуется что-то вроде этого, я бегу
grails clean
а также
grails compile --refresh-dependencies
Это происходит довольно часто, когда я делаю изменения в статических элементах, и динамическая перезагрузка включена во время работы приложения. Я считаю, что мне нужно удалить и повторно добавить проект в рабочую область. Это похоже на то, что метаданные проекта находятся в "застрявшем" состоянии, когда ошибка произошла во время выполнения.