使用配置文件运行spring boot jar文件-错误找不到属性文件

时间:2018-12-26 23:26:46

标签: java spring spring-boot maven-profiles spring-config

运行带有外部配置文件的spring boot jar文件时遇到问题。

我有一个球衣运动项目。我将属性和一些证书文件放置在不同的目录中(用于不同的服务器开发和生产等)。应用程序需要这些属性和证书文件。

我的项目结构如下

MyProject
|_configurations
    |_local
    |_dev
|_web
    |__src
    |_target

通过在类路径中设置本地配置文件,可以在intelliJ上本地运行它。 我正在从Web目录中生成jar文件。

当我运行jar文件时,它抱怨并且找不到属性和证书文件。

这些是我的尝试

  1. 通过在资源中放置所需的属性和证书来生成新的jar文件 目录位于web \ src \ main目录下。
  2. 将jar文件作为
  3. 运行时,将属性文件放入类路径中

java –jar –DApp.config.file="c:\MyProject\conf\local" MyProject.jar

但是没有任何效果,并且出现相同的错误,抱怨找不到属性和证书文件。

任何帮助如何解决此问题。还有其他更好的解决方案来解决这种问题。

1 个答案:

答案 0 :(得分:0)

最后,我弄清楚了如何使用配置文件。

  1. 如果配置文件在项目内部 运行jar时,通过配置文件的名称将配置文件加载到类路径中 java -jar -Dspring.profiles.active=<Profile name> YourApp.jar

  2. 以下内容如果配置在jar文件之外 运行jar时加载配置文件和配置

    java -jar -Dspring.profiles.active=<profile name> -Dloader.path=file:///C:/yourdirectorypath/MyApp/conf/environments/local MyApp.jar

还请注意,顺序应与给定命令中的顺序相同,即Profile> Dloader.path> jar文件名