Автоматическая перезагрузка / горячая замена простой заводской зависимости в многопроектной сборке Grails

У меня есть проект Grails, который включает в себя отдельный проект Gradle, содержащий служебные классы Java/Groovy, которые используются многими проектами. Я использую многопроектную сборку, чтобы я мог разрабатывать оба проекта одновременно.

Служебные классы во включенном проекте не имеют горячей замены / горячей перезагрузки / автоматической перезагрузки / подпружиненной загрузки (я полагаю, что для этой концепции существует много синонимов). Это означает, что каждый раз, когда я изменяю один из классов утилит из включенного проекта, мне приходится перезапускать приложение Grails.

Кто-нибудь знает, как заставить подпроект использовать функцию горячей замены, которую использует Grails? Из этого комментария видно, что Grails делает это с помощью подпружиненной функции Spring Boot: https://github.com/spring-projects/spring-boot/issues/43

Я даже пытался настроить подпроект, как предложено в этом руководстве, с использованием подпружиненной функции: http://mrhaki.blogspot.com/2015/09/spring-sweets-reload-classes-spring.html. Но когда я бегу gradle -t classesЯ в конечном итоге с этим выводом:

Continuous build is an incubating feature.
:compileJava UP-TO-DATE
:compileGroovy FAILED

FAILURE: Build failed with an exception.

* What went wrong:
java.lang.UnsupportedOperationException (no error message)

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 1.832 secs

Waiting for changes to input files of tasks... (ctrl-d then enter to exit)

Сборка не удалась, но процесс все еще выполняется. Поэтому я попытался запустить приложение Grails и проверить, не заменяются ли классы служебных программ, но это не так. Я надеюсь, что есть решение, которое не требует запуска отдельного процесса с gradle -t classes до запуска приложения Grails, но в любом случае, если у кого-то есть какие-либо идеи, я бы с удовольствием их услышал.

0 ответов

Другие вопросы по тегам