我不认为这有什么问题。
我创建了一个小测试程序,即使转换了属性,它也能正常工作。
package com.stackoverflow;
/**
* @author maba, 2012-10-24
*/
public class Main {
public static void main(String[] args) {
String property = System.getProperty("my-property");
System.out.println("property = " + property);
String property2 = System.getProperty("my-property2");
System.out.println("property2 = " + property2);
String property3 = System.getProperty("my-property3");
System.out.println("property3 = " + property3);
}
}
在 IntelliJ 中使用以下内容:
运行时我会得到这个输出:
property = abc
property2 =
property3 = afd
运行时格式化的系统属性将是正确的,因为命令行将如下所示:
"C:\Program Files\Java\jdk1.6.0_33\bin\java" -Dmy-property=abc -Dmy-property2= -Dmy-property3=afd <lots of jars> com.stackoverflow.Main
即将-Dmy-property2=
是空字符串。