#java #maven
Вопрос:
У меня есть два java-приложения с разными файлами «config.yml», я использую «плагин Maven shade», но мне также нужно объединить файлы конфигурации, как я могу это сделать?
Структура первого приложения:
src/main
|-- java
| |-- Code1
|
|-- resources
|-- config.yml
|-- plugin.yml
Структура второго приложения:
src/main
|-- java
| |-- Code2
|
|-- resources
|-- config.yml
|-- lang.yml
То, что я ожидаю увидеть:
src/main
|-- java
| |-- Code1
| |-- Code2
|
|-- resources
|-- config.yml (Merged)
|-- lang.yml
|-- plugin.yml
Моя конфигурация сборки Maven (которая делает все, что мне нужно, кроме слияния config.yml):
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.6.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.0.0</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
Комментарии:
1. Я не знаю ни одного плагина, способного объединять файлы конфигурации. И я также не уверен в том, как это можно было бы сделать портативным способом. Как плагин maven узнает, как разрешить конфликты слияния, если таковые имеются? Возможно, вам потребуется написать свой собственный плагин для этого конкретного случая использования.
2. @Йоханнес. Thx за помощью