Вот сценарий. У меня есть приложение Grails, которое зависит от нескольких плагинов.
Скажем, приложение зависит от pluginMain, pluginA и pluginB. то есть application.properties выглядит
pluginMain version1
плагин версия X
плагинB версияX
pluginB - это пользовательский плагин, написанный мной.
pluginA - это сторонний плагин. У меня нет контроля над исходным кодом.
и pluginA, и pluginB зависят от pluginMain.
Поэтому, когда приложение загружается, в зависимости от порядка загрузки этих плагинов, каждый из pluginA и pluginB пытается установить pluginMain. Проблема заключается в том, что если плагин A загружается первым, он устанавливает версию 2 pluginMain, а если плагин B загружается первым, он устанавливает версию 1 pluginMain. Приложение использует версию 1 pluginMain. В этом случае обе версии плагинаMain установлены.
из-за нескольких версий, приложение взрывается после запуска. Чтобы быть точным, это приводит к бесконечным перенаправлениям на странице входа в систему.
Так что мне было интересно, есть ли способ указать порядок загрузки плагинов, чтобы в приложении я мог сказать, что загрузить pluginMain версии 1. и все остальные плагины будут использовать эту версию pluginMain.