У нас есть большой файл pom.xml от maven, который имеет много определений, подобных этому:
<properties>
<commons-collections.version>3.2.2</commons-collections.version>
...
<dependencyManagement>
<dependencies>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>${commons-collections.version}</version>
</dependency>
Бом находится в отдельном подпроекте в многопроектной сборке Gradle.
Нам нужно импортировать эту бомбу из файла (изменения в ней должны автоматически стать активными без публикации в хранилище).
Также мы хотим переопределить свойства версии перед импортом pom (в этом случае настройка "commons-collection.version" на другую версию в gradle перед импортом bom)
Наконец, нам нравится использовать свойства версии, импортированные из BOM (например, использовать свойства для замены заполнителей в текстовых файлах с processResources / expand)
Применить спецификацию ко всем конфигурациям (например, как compile и testCompile)
В настоящее время мы используем плагин «io.spring.dependency-management», но он не работает с «1. Импорт из файла»
Я думаю, что Gradle сам может импортировать BOM из файла (если вы используете enableFeaturePreview("IMPROVED_POM_SUPPORT")
), но может ли он сделать 2. до 4.?
Как насчет плагина рекомендателя туманности?