在 Java 中我們可以透過 System.getProperties() 取得 JVM 參數設定,System.getenv() 來取得作業系統的環境變數設定。你可以在 The Java Tutorials 裡面參考 System Properties 與 Environment Variables 教學文章看到其他用法。
如果你使用 Eclipse 你可以透過 -D<Key>=<Value> 的方式在 Run > Run Configurations... > (x)= Arguments > VM Arguments 來設定額外的 JVM 屬性設定。例如你可以填入 -DColor=blue 來設定 Color 屬性為 blue。如下圖所示:
簡易的範例程式如下:
參考文章:
如果你使用 Eclipse 你可以透過 -D<Key>=<Value> 的方式在 Run > Run Configurations... > (x)= Arguments > VM Arguments 來設定額外的 JVM 屬性設定。例如你可以填入 -DColor=blue 來設定 Color 屬性為 blue。如下圖所示:
簡易的範例程式如下:
// 列出目前所有的 JVM 屬性設定 System.getProperties().list(System.out); // 透過 getProperty 單獨取出特定的某個屬性設定值 System.out.println("Color = " + System.getProperty("file.separator")); // 取出我們設定的屬性值,注意屬性名稱是 case sensitive // 如果你寫成 color 得到的會是 null System.out.println("Color = " + System.getProperty("Color")); // 你也可以使用下列方式,當所指定的屬性沒有鍵值時,回傳你所設定的預設值 // 下面的範例當沒有設定 Color 屬性鍵值時會回傳預設的 Pink 值 System.out.println("Color = " + System.getProperty("Color", "Pink")); // 列出目前作業系統所有的環境變數設定 Set<Map.Entry<String, String>> envSet = System.getenv().entrySet(); for (Map.Entry<String, String> set: envSet) { System.out.println(set.getKey() + " = " + set.getValue()); } // 透過 System.getenv(key) 的方式單獨取出你想要的屬性設定 System.out.println("SystemDrive = " + System.getenv("SystemDrive")); System.out.println("TEMP = " + System.getenv("TEMP"));
參考文章:
- What's the difference between a System property and environment variable
- Difference between System.getenv() & System.getProperty()
沒有留言:
張貼留言