Spring Boot java -jar 命令行传参
Spring Boot
参数配置一般放在application.properties/yml
,也就是默认参数,可以在启动的时候传参覆盖。
命令传参方式有三种风格
这种方式适合传递少量参数
以tomcat
端口配置为例:server.port=9000
环境变量
不推荐,因为有时不一致,比如
logging.file
对应的是LOG_FILE
SERVER_PORT=9000 java -jar myapp.jar |
系统变量
java -Dserver.port=9000 -jar myapp.jar |
命令行参数
java -jar myapp.jar --server.port=9000 |
批量传参
有两种方式,命令的写法可以从上面三种选一种
指定配置文件覆盖
application-prod.yml
和myapp.jar
在同一目录
java -jar myapp.jar --spring.config.location=application.yml |
spring.config.location
的值可以有多个,用逗号分隔
JSON数据传参
spring.application.json
是一个特殊参数,它的值就是整个配置文件的json格式
java -jar myapp.jar --spring.application.json='{"server":{"port":9000}}' or SPRING_APPLICATION_JSON='{"server":{"port":9000}}' java -jar myapp.jar