运行带有外部配置文件的spring boot jar文件时遇到问题。
我有一个球衣运动项目。我将属性和一些证书文件放置在不同的目录中(用于不同的服务器开发和生产等)。应用程序需要这些属性和证书文件。
我的项目结构如下
MyProject
|_configurations
|_local
|_dev
|_web
|__src
|_target
通过在类路径中设置本地配置文件,可以在intelliJ上本地运行它。 我正在从Web目录中生成jar文件。
当我运行jar文件时,它抱怨并且找不到属性和证书文件。
这些是我的尝试
java –jar –DApp.config.file="c:\MyProject\conf\local" MyProject.jar
但是没有任何效果,并且出现相同的错误,抱怨找不到属性和证书文件。
任何帮助如何解决此问题。还有其他更好的解决方案来解决这种问题。
答案 0 :(得分:0)
最后,我弄清楚了如何使用配置文件。
如果配置文件在项目内部
运行jar时,通过配置文件的名称将配置文件加载到类路径中
java -jar -Dspring.profiles.active=<Profile name> YourApp.jar
以下内容如果配置在jar文件之外 运行jar时加载配置文件和配置
java -jar -Dspring.profiles.active=<profile name> -Dloader.path=file:///C:/yourdirectorypath/MyApp/conf/environments/local MyApp.jar
还请注意,顺序应与给定命令中的顺序相同,即Profile> Dloader.path> jar文件名