在看公司平台的源码时,发现在启动时控制台会打印一些系统参数,比如:JDK版本,JVM虚拟机的属性,以及一些自定义的配置信息。通过Java的System可以获取到这些参数。
获取JVM变量(System.getProperties())
public static void main(String[] args) {
// System.getProperty("keyName");
// System.getProperty("keyName", "defaultValue");
System.out.println(System.getProperties());
}
打印的部分结果,其中fileLocation属于自定义的变量
IDEA 设置自定义参数(VM options)
双引号可加可不加,-D后面接上自定义的key-value,支持定义多个变量
Program arguments
这里的参数是传入main函数args中,这里的args和C的main不同,Java的args不包含自己的类名,也就是arguments写多少个args就是多少个,而像C语言,Python这种总会多传入一个自己的文件名作为参数。
获取系统环境变量
通过System.getenv可以获取到操作系统的环境变量,在Window下可以看到自己配置的比如:maven,jdk,ant的环境变量
public static void main(String[] args) {
// System.getenv("keyName");
// System.getenv("keyName", "defaultValue");
System.out.println(System.getenv());
}