Java獲取環(huán)境變量(System.getenv)的方法
簡介
說明
本文用示例介紹Java獲得環(huán)境變量的方法:System.getenv。
System.getenv與System.getProperty的區(qū)別
項 | 屬性(System.getProperty) | 環(huán)境變量(System.getenv) |
運行時是否可修改 | 可以 | 不可以 |
有效范圍 | 僅在java平臺中有效 | 系統(tǒng)里所有程序都有效 |
創(chuàng)建的時機 | 打包應(yīng)用時屬性必須存在 | 可以在任何時候創(chuàng)建環(huán)境變量 |
相關(guān)網(wǎng)址
System.getProperty用法:
常用方法
方法 | 作用 |
System.getenv() | 獲得所有環(huán)境變量 |
System.getenv(String name) | 獲得名為name的屬性的值。 |
獲得自定義的環(huán)境變量
現(xiàn)在指定JAVA_HOME環(huán)境變量,值為JDK路徑,如下圖所示:
package com.example.a; public class Demo { public static void main(String[] args) { String javaHome = System.getenv("JAVA_HOME"); System.out.println("javaHome的值:" + javaHome); } }
執(zhí)行結(jié)果(直接執(zhí)行或者打成jar包來執(zhí)行都可以)
打印所有的環(huán)境變量
package com.example.a; import java.util.Map; public class Demo { public static void main(String[] args) { Map<String, String> envMap = System.getenv(); for (Map.Entry<String, String> entry : envMap.entrySet()) { System.out.println(entry.getKey() + ":" + entry.getValue()); } } }
執(zhí)行結(jié)果:
USERDOMAIN_ROAMINGPROFILE:DESKTOP-QI6B9ME
NVM_SYMLINK:D:\Program Files\dev\nvm\symlink
PROCESSOR_LEVEL:23
SESSIONNAME:Console
ALLUSERSPROFILE:C:\ProgramData
PROCESSOR_ARCHITECTURE:AMD64
PSModulePath:C:\Program Files\WindowsPowerShell\Modules;C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules
SystemDrive:C:
MAVEN_HOME:E:\work\maven\apache-maven-3.6.3
MOZ_PLUGIN_PATH:D:\Program Files (x86)\Foxit Software\Foxit Reader\plugins\
USERNAME:knife
ProgramFiles(x86):C:\Program Files (x86)
FPS_BROWSER_USER_PROFILE_STRING:Default
PATHEXT:.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
DriverData:C:\Windows\System32\Drivers\DriverData
ProgramData:C:\ProgramData
ProgramW6432:C:\Program Files
HOMEPATH:\Users\knife
PROCESSOR_IDENTIFIER:AMD64 Family 23 Model 96 Stepping 1, AuthenticAMD
HADOOP_HOME:D:\dev\bigdata\hadoop-3.2.2
M2_HOME:E:\work\maven\apache-maven-3.6.3
ProgramFiles:C:\Program Files
PUBLIC:C:\Users\Public
windir:C:\WINDOWS
=:::::\
LOCALAPPDATA:C:\Users\knife\AppData\Local
USERDOMAIN:DESKTOP-QI6B9ME
FPS_BROWSER_APP_PROFILE_STRING:Internet Explorer
LOGONSERVER:\\DESKTOP-QI6B9ME
JAVA_HOME:D:\dev\Java\jdk1.8.0_201
WebStorm:D:\Program Files\JetBrains\WebStorm 2021.1.3\bin;
OneDrive:C:\Users\knife\OneDrive
APPDATA:C:\Users\knife\AppData\Roaming
CommonProgramFiles:C:\Program Files\Common Files
Path:C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;d:\Program Files\Git\cmd;D:\dev\Java\jdk1.8.0_201\bin;E:\work\maven\apache-maven-3.6.3\bin;D:\Program Files\mysql-8.0.21-winx64\bin;E:\work\npm\node_global;D:\dev\nodejs\;D:\dev\bigdata\hadoop-3.2.2\bin;D:\dev\bigdata\scala-2.12-13\bin;C:\Users\knife\AppData\Local\Microsoft\WindowsApps;D:\Program Files\JetBrains\WebStorm 2021.1.3\bin;;D:\Program Files\dev\nvm\symlink;C:\Users\knife\AppData\Roaming\npm;
OS:Windows_NT
COMPUTERNAME:DESKTOP-QI6B9ME
PROCESSOR_REVISION:6001
CommonProgramW6432:C:\Program Files\Common Files
ComSpec:C:\WINDOWS\system32\cmd.exe
WXDRIVE_START_ARGS:--wxdrive-setting=0 --disable-gpu --disable-software-rasterizer --enable-features=NetworkServiceInProcess
SystemRoot:C:\WINDOWS
TEMP:C:\Users\knife\AppData\Local\Temp
HOMEDRIVE:C:
USERPROFILE:C:\Users\knife
TMP:C:\Users\knife\AppData\Local\Temp
CommonProgramFiles(x86):C:\Program Files (x86)\Common Files
NUMBER_OF_PROCESSORS:12
IDEA_INITIAL_DIRECTORY:C:\Users\knife\Desktop
默認(rèn)環(huán)境變量及其含義
環(huán)境變量 | 含義 |
USERPROFILE | 用戶目錄 |
USERDNSDOMAIN | 用戶域 |
PATHEXT | 可執(zhí)行后綴 |
JAVA_HOME | Java安裝目錄 |
TEMP | 用戶臨時文件目錄 |
SystemDrive | 系統(tǒng)盤符 |
ProgramFiles | 默認(rèn)程序目錄 |
USERDOMAIN | 帳戶的域的名稱 |
ALLUSERSPROFILE | 用戶公共目錄 |
SESSIONNAME | Session名稱 |
TMP | 臨時目錄 |
Path | path環(huán)境變量 |
CLASSPATH | classpath環(huán)境變量 |
PROCESSOR_ARCHITECTURE | 處理器體系結(jié)構(gòu) |
OS | 操作系統(tǒng)類型 |
PROCESSOR_LEVEL | 處理級別 |
COMPUTERNAME | 計算機名 |
Windir | 系統(tǒng)安裝目錄 |
SystemRoot | 系統(tǒng)啟動目錄 |
USERNAME | 用戶名 |
ComSpec | 命令行解釋器可執(zhí)行程序的準(zhǔn)確路徑 |
APPDATA | 應(yīng)用程序數(shù)據(jù)目錄 |
到此這篇關(guān)于Java獲取環(huán)境變量(System.getenv)的方法的文章就介紹到這了,更多相關(guān)Java獲取環(huán)境變量內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java實例方法被覆蓋,靜態(tài)方法被隱藏Explain(詳解)
下面小編就為大家?guī)硪黄猨ava實例方法被覆蓋,靜態(tài)方法被隱藏Explain(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-05-05java中http請求之restTemplate配置超時時間問題解決
這篇文章主要介紹了java中http請求之restTemplate配置超時時間,本文給大家分享三種解決方法,結(jié)合實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-05-05關(guān)于SSM框架下各層的解釋說明(Controller等)
這篇文章主要介紹了關(guān)于SSM框架下各層的解釋說明(Controller等),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-02-02Java如何通過"枚舉的枚舉"表示二級分類的業(yè)務(wù)場景
這篇文章主要介紹了Java如何通過"枚舉的枚舉"表示二級分類的業(yè)務(wù)場景問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-06-06SpringBoot 過濾器, 攔截器, 監(jiān)聽器的具體使用
本文主要介紹了SpringBoot 過濾器, 攔截器, 監(jiān)聽器的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-05-05Java對象在內(nèi)存中的布局是如何實現(xiàn)的?
Java對象在內(nèi)存中屬于oop-klass二分模型,即對象的實例數(shù)據(jù)和對象類型的元數(shù)據(jù)(字段定義、方法、常量池等元數(shù)據(jù))是分開存儲的.而由于JVM對對象內(nèi)相同寬度的字段分配在一起,所以只要指定了字段類型分配的順序,就可以計算出每種類型字段相對于當(dāng)前對象的偏移起始位置2021-06-06