Java获取环境变量(System.getenv)的方法

 更新时间:2022年05月24日 08:59:39   作者:IT利刃出鞘  
本文主要介绍了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获取环境变量内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Springboot整合Activiti操作详解

    Springboot整合Activiti操作详解

    这篇文章主要给大家详细介绍了Springboot整合Activiti的操作流程,文中流程步骤和代码示例介绍的非常详细,具有一定的参考价值,需要的朋友可以参考下
    2023-07-07
  • MapStruct实体间转换的简单用法

    MapStruct实体间转换的简单用法

    今天小编就为大家分享一篇关于MapStruct实体间转换的简单用法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • Java实现截图小工具的完整代码

    Java实现截图小工具的完整代码

    这篇文章主要介绍了Java实现截图小工具的完整代码,用Java的图形用户界面GUI技术写了一个电脑截图小工具,本程序代码简单,涉及到异常处理,事件处理,图形用户界面等,需要的朋友可以参考下
    2022-05-05
  • Java String转换时为null的解决方法

    Java String转换时为null的解决方法

    这篇文章主要介绍了Java String转换时为null的解决方法,需要的朋友可以参考下
    2017-07-07
  • 设置session有效时间的三种方式

    设置session有效时间的三种方式

    这篇文章主要介绍了设置session有效时间的三种方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • Java汉字转成汉语拼音工具类

    Java汉字转成汉语拼音工具类

    这篇文章主要为大家详细介绍了Java汉字转成汉语拼音工具类,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • Spring Boot 静态资源处理

    Spring Boot 静态资源处理

    今天小编就为大家分享一篇关于Spring Boot 静态资源处理,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • Java如何按16进制发送和接收TCP指令

    Java如何按16进制发送和接收TCP指令

    这篇文章主要介绍了Java如何按16进制发送和接收TCP指令问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • 详解Kotlin和anko融合进行Android开发

    详解Kotlin和anko融合进行Android开发

    本篇文章主要介绍了Kotlin和anko融合进行Android开发,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • 不看后悔!揭秘游戏服务器开发

    不看后悔!揭秘游戏服务器开发

    刚开始时以为做游戏服务器和做web差不多,但是经过一段时间之后,才发现代码太多,太乱了,这里我把一些游戏开发方面的东西整理一下,希望能对那些想做游戏服务器开发的朋友有所帮助
    2021-06-06

最新评论