本文目錄一覽:
- 1、java如何讀取操作系統環境變量
- 2、java怎樣獲取自定義環境變量
- 3、linux java怎樣讀取環境變量
- 4、如何在Java中獲取環境變量的值
- 5、在Java中如何讀取Windows的環境變量
java如何讀取操作系統環境變量
描述: 取得當前系統變量的程序。 java中的System.getProperty只是針對JVM來的,如果要取得系統環境變量,還要用到系統相關的函數作者: 慈勤強
java怎樣獲取自定義環境變量
定義一個變量存儲常用的的環境變量,然後進行對比,不一樣的就是自定義的了
描述較為簡略,如果疑問可追答
System.getenv();//獲取系統環境變量
public static void main(String[] args) {
MapString, String map = System.getenv();
for(IteratorString itr = map.keySet().iterator();itr.hasNext();){
String key = itr.next();
System.out.println(key + “=” + map.get(key));
}
}
linux java怎樣讀取環境變量
Windows下JAVA用到的環境變量主要有3個,JAVA_HOME、CLASSPATH、PATH。下面逐個分析。JAVA_HOME指向的是JDK的安裝路徑,如x:\JDK_1.4.2,在這路徑下你應該能夠找到bin、lib等目錄。值得一提的是,JDK的安裝路徑可以選擇任意磁盤目錄,不過建議你放的目錄層次淺一點,如果你放的目錄很深,比如x:\XXXX\xxxx\XXXX\xxxx\XXXX\xxxx\XXXX\xxx……那麼,下面的步驟和以後的應用你都要受累了,呵呵。設置方法:JAVA_HOME=x:\JDK_1.4.2PATH環境變量原來Windows裡面就有,你只需修改一下,使他指向JDK的bin目錄,這樣你在控制台下面編譯、執行程序時就不需要再鍵入一大串路徑了。設置方法是保留原來的PATH的內容,並在其中加上%JAVA_HOME%\bin%JAVA_HOME%來看一下你的設置結果) :PATH=%JAVA_HOME%\bin;%PATH%同樣,%PATH%是引用以前你設置的PATH環境變量,你照抄以前的值就行了。CLASSPATH環境變量我放在最後面,是因為以後你出現的莫名其妙的怪問題80%以上都可能是由於CLASSPATH設置不對引起的,所以要加倍小心才行。CLASSPATH=.\;%JAVA_HOME%\lib\tools.jar首先要注意的是最前面的”.\;”,如果你看不清,我給你念念——句點反斜杠分號。這個是告訴JDK,搜索CLASS時先查找當前目錄的CLASS文件——為什麼這樣搞,這是由於LINUX的安全機制引起的,LINUX用戶很明白,WINDOWS用戶就很難理解(因為WINDOWS默認的搜索順序是先搜索當前目錄的,再搜索系統目錄的,再搜索PATH環境變量設定的),所以如果喜歡盤根究底的朋友不妨研究一下LINUX。這個是由java語言的import機制和jar機制決定的,你可以查資料解決。 呵呵,具體的設定方法: win2k\xp用戶右鍵點擊我的電腦-屬性-高級-環境變量,修改下面系統變量那個框里的值就行了。
如何在Java中獲取環境變量的值
當程序中需要使用與操作系統相關的變量(例如:文件分隔符、換行符)時,Java提供了System類的靜態方法getenv()和getProperty()用於返回系統相關的變量與屬性,getenv方法返回的變量大多於系統相關,getProperty方法返回的變量大多與java程序有關。
系統屬性和環境變量都是名稱與值之間的映射。兩種機制都能用來將用戶定義的信息傳遞給 Java進程。環境變量產生更多的全局效應,因為它們不僅對Java子進程可見,而且對於定義它們的進程的所有子進程都是可見的。在不同的操作系統上,它們的語義有細微的差別,比如,不區分大小寫。因此環境變量更可能有意料不到的副作用。程序中儘可能使用系統屬性。環境變量應該在需要全局效應的時候使用,或者在外部系統接口要求使用環境變量時使用(比如 PATH)。
1、環境變量getenv() :用於獲取當前系統環境的字符串映射視圖;測試代碼及運行結果如下:
publicclass Test {
publicstaticvoid main(String[] args) {
MapString, String map = System.getenv();
for(IteratorString itr = map.keySet().iterator();itr.hasNext();){
String key = itr.next();
System.out.println(key + “=” + map.get(key));
}
}
}
USERPROFILE :用戶目錄
USERDNSDOMAIN :用戶域
PATHEXT :可執行後綴
JAVA_HOME :Java安裝目錄
TEMP :用戶臨時文件目錄
SystemDrive :系統盤符
ProgramFiles :默認程序目錄
USERDOMAIN :帳戶的域的名稱
ALLUSERSPROFILE :用戶公共目錄
SESSIONNAME :Session名稱
TMP :臨時目錄
Path :path環境變量
CLASSPATH :classpath環境變量
PROCESSOR_ARCHITECTURE :處理器體系結構
OS :操作系統類型
PROCESSOR_LEVEL :處理級別
COMPUTERNAME :計算機名
Windir :系統安裝目錄
SystemRoot :系統啟動目錄
USERNAME :用戶名
ComSpec :命令行解釋器可執行程序的準確路徑
APPDATA :應用程序數據目錄
2、系統屬性getProperty() :當前的系統屬性。測試代碼及運行結果如下:
java.version Java :運行時環境版本
java.vendor Java :運行時環境供應商
java.vendor.url :Java供應商的 URL
java.home :Java安裝目錄
java.vm.specification.version: Java虛擬機規範版本
java.vm.specification.vendor :Java虛擬機規範供應商
java.vm.specification.name :Java虛擬機規範名稱
java.vm.version :Java虛擬機實現版本
java.vm.vendor :Java虛擬機實現供應商
java.vm.name :Java虛擬機實現名稱
java.specification.version:Java運行時環境規範版本
java.specification.vendor:Java運行時環境規範供應商
java.specification.name :Java運行時環境規範名稱
java.class.version :Java類格式版本號
java.class.path :Java類路徑
java.library.path :加載庫時搜索的路徑列表
java.io.tmpdir :默認的臨時文件路徑
java.compiler :要使用的 JIT編譯器的名稱
java.ext.dirs :一個或多個擴展目錄的路徑
os.name :操作系統的名稱
os.arch :操作系統的架構
os.version :操作系統的版本
file.separator :文件分隔符
path.separator :路徑分隔符
line.separator :行分隔符
user.name :用戶的賬戶名稱
user.home :用戶的主目錄
user.dir:用戶的當前工作目錄
在Java中如何讀取Windows的環境變量
public class PathTest {
public static void main(String[] args) {
for(String a:System.getenv().keySet()) {
System.out.println(a+”===”+System.getenv(a));
}
}
}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/180348.html