Java程序启动时-D指定参数详解

参数设置

java程序启动参数 -D是用来做什么的呢? 官方解释如下:

Set a system property value. If value is a string that contains spaces, you must enclose the string in double quotes:

java -Dfoo="some string" SomeClass

也就是说-D是用来在启动一个java程序时设置系统属性值的。

注意: 如果该值是一个字符串且包含空格,那么需要包在一对双引号中。

参数获取

通过System类中的getProperties()可以获取到设置的系统属性;该方法的返回值类型为String。

测试类

public class Test {
          
   

    private static final String ENABLE_MYBATIS_PLUGIN = "ENABLE_MYBATIS_PLUGIN";

    private static String enableMybatisPlugin = System.getProperty(ENABLE_MYBATIS_PLUGIN);

    public static void main(String[] args) {
          
   
        System.out.println(enableMybatisPlugin);
    }
}

在运行程序时加上JVM参数-DENABLE_MYBATIS_PLUGIN=true 或 -DENABLE_MYBATIS_PLUGIN=“true”: 注意上图设置的是JVM参数而不是program参数。

最后,控制台输出如下:

经验分享 程序员 微信小程序 职场和发展