【问题标题】:Spring.factories in META-INF folder not added to "target" folder after packaging jar (springboot app)打包 jar 后 META-INF 文件夹中的 Spring.factories 未添加到“目标”文件夹(springboot 应用程序)
【发布时间】:2021-02-01 21:10:38
【问题描述】:

我正在尝试使用 EnvironmentPostProcessor 将一些 docker 机密加载到应用程序属性中。

我有一个带有 spring.factories 文件的 META-INF 文件夹来绑定 EnvironmentPostProcessor 实现,META-INF 文件夹位于 main/java/META-INF 下。

我遇到的问题是,当我使用maven install / maven包时,将META-INF文件夹添加到target/classes文件夹中,但是spring.factories文件不存在。

我想将它添加为要生成的资源,并且我不能在资源文件夹中拥有 META-INF,因为我还使用 JAX2B,它需要在包中生成可供其他模块使用的类(不是资源文件夹)

非常感谢一些帮助..

【问题讨论】:

    标签: spring-boot maven meta-inf


    【解决方案1】:

    按照 Maven 约定,它应该是 main/java/resources/META-INF/spring.factories

    如果你不把它放在main/java/resources 下,maven 将无法识别该文件夹,也不会将任何内容移动到目标目录....

    至于 JAX2B - 您应该在 target/generates-sources 文件夹中生成源文件(或者如果它类似于 XML,target/generated-resources)这些文件夹也可以被 IntelliJ 识别。在任何情况下,您都不应该在src/main 下生成任何东西,它是为您提供源文件而不是生成文件的地方。

    【讨论】:

      猜你喜欢
      • 2019-09-05
      • 2020-11-03
      • 2018-07-14
      • 2016-12-12
      • 2021-11-24
      • 1970-01-01
      • 2014-05-26
      • 1970-01-01
      • 2010-11-20
      相关资源
      最近更新 更多