- 点击Edit Configurations
2
# VM Arguments 是设置的虚拟机的属性
# VM options
# 环境变量参数 非虚拟机参数需要指定-D参数
-server -XX:MetaspaceSize=512M -XX:MaxMetaspaceSize=1024m -Dfile.encoding=UTF-8
# Program arguments的值作为args[] 的参数传入的
# Environment variable 环境变量 这里不需要-D 参数
-D 系统属性
-X* jvm参数
# 两个横杠是springboot参数
--server.port=8088
# VM options 优先级 高于 Environment variable
优先级
Program arguments (--priority=program-agrs) > VM options (-Dpriority=vm-options) > Environment variable (priority=environment-variables)
以下几种方式都可以被@Value读取到
1、java -jar -Dserver.port=8888 -Xms1024m demo.jar
这种方式增加的参数是被设置到应用的系统属性中,可以使用System.getProperty(“server.port”)获取(可以在idea的idea VM options中配置,以空格分隔)
-D(defintion)表示自定义参数
2、java -jar demo.jar --server.port=8888
这种方式增加的参数是属于命令行参数,即会从springboot启动时的main方法的String[] args中作为参数传入(可以在idea的program arguments中配置,以空格分隔)
3、从操作系统的环境变量中读取
这种方式的参数即属于操作系统方面的,比如安装jdk时设置的环境变量,定义JAVA_HOME,也可以通过System.getenv(“JAVA_HOME”)获取,(可以在idea的VM Environment variables中配置,以;分隔)
4、通过项目中配置文件bootstrap/application文件载入
这种方式是在项目中配置的方式,比较常见
评论区