今天翻看Sytem.class源碼,發現getenv()方法,頓時眼前一亮,於是查資料把了解的整理如下:
方法定義:
public static String getenv(String name) { SecurityManager sm = getSecurityManager(); if (sm != null) { sm.checkPermission(new RuntimePermission("getenv."+name)); } return ProcessEnvironment.getenv(name); }
java.lang.System.getenv(String name) 方法獲取指定的環境變量的值。環境變量是依賴於系統的外部命名值。
環境變量應使用一個全局作用,或者當外部系統的接口需要一個環境變量(如PATH)。
下面的例子顯示java.lang.System.getenv()方法的使用:
public static void main(String[] args){ System.out.println("Java運行時環境版本:"+System.getProperty("java.version")); System.out.println("Java 運行時環境供應商:"+System.getProperty("java.vendor")); System.out.println("Java 供應商的URL:"+System.getProperty("java.vendor.url")); System.out.println("Java安裝目錄:"+System.getProperty("java.home")); System.out.println("Java 虛擬機規范版本:"+System.getProperty("java.vm.specification.version")); System.out.println("Java 類格式版本號:"+System.getProperty("java.class.version")); System.out.println("Java類路徑:"+System.getProperty("java.class.path")); System.out.println("操作系統的名稱:"+System.getProperty("os.name")); System.out.println("操作系統的架構:"+System.getProperty("os.arch")); System.out.println("操作系統的版本:"+System.getProperty("os.version")); System.out.println("用戶的主目錄:"+System.getProperty("user.home")); System.out.println("用戶的當前工作目錄:"+System.getProperty("user.dir")); System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@"); System.out.println("自定義變量getProperty CONF_LOCATION:"+System.getProperty("conf.location")); System.out.println("--------------------------------------------"); System.out.println("自定義變量getenv CONF_LOCATION:"+System.getenv("conf.location")); } }