是否可以通过 Jar 文件在参数中发送 application.properties 文件?

Is it possible to send a application.properties file in arguments through a Jar file?

我有一个 Springboot 项目,我知道我可以发送一个 application.properties 文件作为参数,但这可以使用 jar 文件吗?

我使用 maven 构建了我的 jar 文件,在我的应用程序中我有这段代码,如果用户发送参数 运行。

如果我通过参数接收应用程序属性,是否有任何方法允许我设置应用程序属性?还是像我使用命令时一样自动覆盖文件 mvn spring-boot:run -Dspring.config.location=your.properties

if (args[0].equals("run")) {
            ConfigurableApplicationContext ctx = SpringApplication.run(MigrationsApplication.class, args);
            int exitCode = SpringApplication.exit(ctx, () -> 0);
            System.exit(exitCode);
        }

对于 jar,您可以传递其中一个属性或完整的或其位置,如下所示。

我们可以直接在命令行配置位置:

java -jar app.jar --spring.config.location=file:///Users/home/config/jdbc.properties

我们还可以传递应用程序将在其中搜索文件的文件夹位置:

java -jar app.jar --spring.config.name=application,jdbc --spring.config.location=file:///Users/home/config

并且,另一种方法是 运行 Spring 通过 Maven 插件引导应用程序。在那里,我们可以使用 -D 参数:

mvn spring-boot:run -Dspring.config.location="file:///Users/home/jdbc.properties"