`

通过java获取系统环境变量

    博客分类:
  • java
阅读更多

代码如下:

<!----> 1       public   static  Map getEnv() {
 2          Map map  =   new  HashMap();
 3          String OS  =  System.getProperty( " os.name " ).toLowerCase();
 4          
 5          Process p  =   null ;
 6          
 7         /**
 8           * 以windows为例.
 9           */
10           if (OS.indexOf( " windows " >   - 1 ) {
11               try  {
12                  p  =  Runtime.getRuntime().exec( " cmd /c set " );
13                  BufferedReader br  =   new  BufferedReader( new  InputStreamReader(p.getInputStream()));
14                  
15                  String line;
16                  
17                   while ((line  =  br.readLine())  !=   null ) {
18                      String[] str  =  line.split( " = " );
19                      map.put(str[ 0 ], str[ 1 ]);
20                  }
21              }  catch (IOException ioe) {
22                  ioe.printStackTrace();
23              }
24          }
25           return  map;
26      }


上述代码将windows系统中的环境变量转换为java的Map,只要通过map.get(key)就能得到环境变量值,比如map.get("JAVA_HOME"),得到JAVA_HOME的值,即JAVA_HOME的系统路径。

值得注意的是在java中使用windows操作系统命令时要在命令前加 cmd /c ,否则java会报错(),错误列表如下:

<!----> 1  java.io.IOException: CreateProcess: ${执行的操作命令表达式或者.bat文件} error = 2
 2  at java.lang.Win32Process.create(Native Method)
 3  at java.lang.Win32Process. < init > (Win32Process.java: 63 )
 4  at java.lang.Runtime.execInternal(Native Method)
 5  at java.lang.Runtime.exec(Runtime.java: 566 )
 6  at java.lang.Runtime.exec(Runtime.java: 428 )
 7  at java.lang.Runtime.exec(Runtime.java: 364 )
 8  at java.lang.Runtime.exec(Runtime.java: 326 )
 9  at org.apache.jsp.ChangeDirBajaRCXX_jsp._jspService(ChangeDirBaja
10  p.java: 185 )


该错误的解释:

<!---->The error  2  comes from the CreateProcess() call, from MSDN (GetLastError():

2   -  The system cannot find the file specified.  -  ERROR_FILE_NOT_FOUND

So, it means the path you passed cannot be found. Maybe you did not configure your Runtime 
class  correctly.
put the batch file in the same directory as the 
class  file and use ( for  a test):

 

分享到:
评论
1 楼 softor 2010-12-21  
你的字符串里怎么多出来那么多空格?
如 line.split( " = " );

相关推荐

    JAVA读取环境变量

    在Java程序中,有时我们需要根据不同的运行环境(如Windows或Linux)来获取系统环境变量。这些环境变量包含了操作系统配置的重要信息,比如路径设置、用户信息等。本文将详细介绍如何在Java程序中实现跨平台地读取...

    java 程序 环境变量修改

    `SystemUtils`是Apache Commons Lang库中的一个类,它提供了获取操作系统信息、判断是否为特定类型的操作系统、检查Java环境变量等功能。在Java代码中,你可以使用`SystemUtils`来判断当前运行环境,例如: ```java...

    获取系统环境变量.rar

    本资源"获取系统环境变量.rar"似乎是一个压缩包,提供了关于如何在不同操作系统中访问和操作这些环境变量的方法。以下是关于系统环境变量的详细解释和相关知识点: 1. **什么是系统环境变量**: 系统环境变量是在...

    java配置环境变量

    在Windows操作系统中,正确配置Java Development Kit (JDK) 的环境变量可以让系统识别并执行Java相关命令,如`javac`(编译器)和`java`(解释器)。以下将详细讲解如何配置Java的环境变量。 首先,我们需要下载并...

    Java 以及tomcat的环境变量的配置

    - 在Windows系统中,可以通过系统属性中的“环境变量”来设置。 - 示例路径:`C:\Program Files\Java\jdk1.6.0_21` ##### 2. Path - **定义**:Path环境变量用于指定一系列可执行文件的位置。 - **配置方法**: ...

    详解Java获取环境变量及系统属性的方法

    获取系统属性的方法与环境变量类似,同样是通过调用System.getProperties()方法来获取一个Properties对象,它包含了Java虚拟机和运行时环境的配置属性。接着,同样使用迭代器遍历Properties对象,打印出所有的系统...

    Delphi设置和查看系统环境变量..rar

    在Delphi中,我们可以通过以下步骤来查看系统环境变量: 1. **使用TEnvironmentVariable组件**:Delphi提供了一个名为TEnvironmentVariable的VCL组件,可以直接拖放到表单上。通过这个组件,我们可以读取或写入系统...

    JAVA环境变量配置

    通过正确配置这些环境变量,操作系统能够找到Java开发工具包(JDK)的安装位置,从而实现Java程序的正常执行。此外,良好的环境配置还能提高开发效率,避免因配置问题导致的各种错误。 #### 三、环境变量配置步骤详解...

    配置java环境变量

    在IT领域,正确配置Java环境变量是确保Java应用程序能在不同操作系统上顺利运行的关键步骤。本文将深入探讨如何在Windows和Linux环境下配置Java环境变量,帮助读者掌握这一基础但至关重要的技能。 ### Windows环境...

    Java环境变量一键配置

    Java环境变量一键配置工具是为了简化Java开发环境的搭建过程,特别是对于那些不熟悉操作系统环境变量配置的用户来说,这是一个非常方便的解决方案。在传统的Java开发环境中,安装Java Development Kit (JDK) 后,...

    Java环境变量添加工具

    通过使用这个工具,用户可以避免手动编辑系统环境变量的复杂过程,减少了出错的可能性,特别是对于新手开发者来说,这是一个非常方便的资源。同时,由于它是VBS脚本,用户也可以根据需要自定义和修改其功能。 在...

    JAVA环境变量搭建

    ### JAVA环境变量搭建 #### 知识点概览 1. **JDK的安装与选择** 2. **JAVA_HOME环境变量的配置** 3. **CLASSPATH环境变量的配置** 4. **Path环境变量的配置** #### 详细说明 在进行JAVA开发前,正确配置好JAVA...

    Java配置环境变量及JDK下载安装教程

    - 按照向导的指示,选择安装路径(默认即可),并确保勾选"Add JDK to PATH"选项,这将自动配置系统环境变量。 - 点击"Install"开始安装,安装完成后,点击"Close"完成。 2. macOS安装: - 双击下载的.dmg文件,...

    java、jsp环境变量配置.cmd

    配置Java和JSP的环境变量是开发过程中的基础步骤,确保系统能够正确识别并运行相关的命令和程序。本文将详细解释如何配置这些环境变量,并介绍提供的"java、jsp环境变量配置.cmd"脚本的作用。 首先,我们来了解环境...

    一键配置WIN7下Java环境变量.zip

    在Windows 7操作系统中,配置Java环境变量是安装和运行Java程序所必需的步骤。Java开发工具包(Java Development Kit, JDK)包含了编译、调试和执行Java应用程序所需的工具和库。本文将详细阐述如何通过“一键配置”...

    系统环境变量调用

    首先,我们来看`systemmEnv.java`这个文件,它很可能是一个示例代码,展示了如何在Java中获取和操作系统环境变量。在Java中,我们可以使用`System.getenv()`方法来获取所有系统环境变量。这个方法返回一个`Map, ...

Global site tag (gtag.js) - Google Analytics