Spring.factories в папке META-INF не добавляется в целевую папку после упаковки jar (приложение springboot)

Я пытаюсь использовать EnvironmentPostProcessor, чтобы загрузить некоторые секреты докера в свойства приложения.

У меня есть папка META-INF с файлом spring.factories для привязки реализации EnvironmentPostProcessor, папка META-INF находится в main/java/META-INF.

Проблема, с которой я сталкиваюсь, заключается в том, что когда я использую пакет maven install/maven, папка META-INF добавляется в папку target/classes, но файла spring.factories там нет.

Я хочу добавить его в качестве ресурса для создания, и я не могу иметь META-INF в папке ресурсов, потому что я также использую JAX2B, который должен генерировать классы в пакете, доступном для других модулей (не ресурса папка)

Был бы очень признателен за помощь..


person robinmanz    schedule 01.02.2021    source источник


Ответы (1)


По соглашению Maven это должно быть main/java/resources/META-INF/spring.factories

Если вы не поместите его в main/java/resources, maven не сможет распознать папку и ничего не переместит в целевой каталог....

Что касается JAX2B - вы должны создать исходные файлы в папке target/generates-sources (или, если это что-то вроде XML, target/generated-resources), эти папки также распознаются, например, IntelliJ. В любом случае вы не должны ничего генерировать под src/main, это место для ваших исходных файлов, а не для сгенерированных файлов.

person Mark Bramnik    schedule 01.02.2021