Grails 3.2 с Intellij не удается расширить класс плагина

#gradle #grails

#gradle #grails

Вопрос:

У меня есть базовый класс плагина, который не может быть разрешен. Это похоже на это:

пакет my.project
class NotificationController расширяет my.notification.плагин.NotificationController {…}

При сборке я получаю ошибку Error: (11, 1) Groovyc: не удается разрешить класс my.notification.плагин.NotificationController

То же самое для службы уведомлений.

Это Intellij или Grails / Gradle? И есть ли лекарство?

Ответ №1:

Ответ таков — вы не можете расширить контроллер из-за специальной обработки, применяемой grails к контроллеру. Если это необходимо сделать, базовый плагин должен разделить «внутренности» контроллера на обычный класс. Тогда и плагин, и основное приложение могут расширить обычный класс. Конечно, это не совсем то же самое, что расширение контроллера плагина, но, похоже, это настолько близко, насколько это возможно. И это предполагает, что кто-то контролирует код класса плагина…