在閱讀java man
頁面時,我發現-Dproperty=value
標誌,通過傳遞此標誌的統計信息,它將創建一個value = value的系統屬性。 我寫了一個測試Java代碼:使用命令行的Java設置系統屬性
class File{
public static void main(String[] args){
System.out.println("HOLA");
System.out.println(System.getProperty("blah"));
}
}
我編譯同樣與javac File.java
然後跑去用命令java File -Dblah=blah
但我得到以下輸出
HOLA
null
,然後我跑了作爲java -Dblah=blah File
然後我得到了預期的輸出:
HOLA
blah
現在的問題是:這是一個錯誤還是這是故意的b ehavior。這似乎是一個錯誤,因爲在大多數程序中,命令在命令行中並不重要。