Java獲取環境變量(System.getenv)的方法

簡介

說明

        本文用示例介紹Java獲得環境變量的方法:System.getenv。

System.getenv與System.getProperty的區別

屬性(System.getProperty) 環境變量(System.getenv
運行時是否可修改 可以 不可以
有效范圍 僅在java平臺中有效 系統裡所有程序都有效
創建的時機 打包應用時屬性必須存在 可以在任何時候創建環境變量

相關網址

System.getProperty用法:

常用方法

方法 作用
System.getenv() 獲得所有環境變量
System.getenv(String name) 獲得名為name的屬性的值。

獲得自定義的環境變量

現在指定JAVA_HOME環境變量,值為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);
    }
}

執行結果(直接執行或者打成jar包來執行都可以)

打印所有的環境變量

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());
        }
    }
}

執行結果:

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

默認環境變量及其含義

環境變量

含義

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

應用程序數據目錄

到此這篇關於Java獲取環境變量(System.getenv)的方法的文章就介紹到這瞭,更多相關Java獲取環境變量內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: