这两个参数都可以用来设置激活的Spring配置文件环境变量,但它们之间有以下区别:
格式不同:-Dspring.profiles.active是通过Java系统属性的方式设置,而--spring.profiles.active是通过命令行参数的方式设置。
作用对象不同:-Dspring.profiles.active是在JVM级别设置系统属性,对整个JVM进程中的所有应用程序生效;而--spring.profiles.active只会在当前应用程序上下文中生效。
使用场景不同:-Dspring.profiles.active通常用于在JVM级别或系统级别设置默认的环境变量,而--spring.profiles.active则通常用于在单个应用程序上下文中指定特定的环境变量,例如在测试或开发环境中使用不同的配置文件。
需要注意的是,在使用-Dspring.profiles.active参数时,应将其放置在java命令后面,如:
java -Dspring.profiles.active=dev -jar app.jar。
而在使用--spring.profiles.active参数时,应将其放置在jar包名称和其他参数之间,如:
java -jar app.jar --spring.profiles.active=dev。
nohup /home/www/jdk/bin/java -Dspring.profiles.active=prod -jar /root/application/cloud-service-1.0-SNAPSHOT.jar > /dev/null 2>&1 &
Spring Boot 四种激活 profiles 方法
欢迎来撩 : 汇总all