精华内容
下载资源
问答
  • JAVA读取环境变量

    2010-11-11 21:41:58
    JAVA读取环境变量 在windows、linux中都可以运行,可指定任何环境变量
  • java读取环境变量

    2011-02-18 11:51:10
    读取环境变量时可以使用 System.getProperty 或 System.getenv 方法。 System.getProperty 方法( JDK1.4 )用来读取针对 JVM 的属性,如程序当前的运行路径、路径分隔符、 Java 版本等, ( 见 System.getProperty()...

    读取环境变量时可以使用 System.getProperty 或 System.getenv 方法。

    System.getProperty 方法( JDK1.4 )用来读取针对 JVM 的属性,如程序当前的运行路径、路径分隔符、 Java 版本等, ( 见 System.getProperty() 参数大全 ) ,它也可以读取在运行程序时设置的自定义属性。

    * 获取一个JVM已定义属性
    //获取系统当前的运行路径
    System.out.println("current path = " + System.getProperty("user.dir") );   

    输出:current path = E:\program\java\test\Test

        * 获取应用程序的属性:

    在命令中输入下面的命令,其中的-D用于设置一个属性 -D<name>=<value>

    SET myvar=Hello world
    SET myothervar=nothing
    java -Dmyvar="%myvar%" -Dmyothervar="%myothervar%" myClass

    myClass中读取这些属性

    String myvar = System.getProperty("myvar");
    String myothervar = System.getProperty("myothervar");

    如果要读取操作系统的环境变量(如 Path 、 TEMP 或 TMP 、 JAVA_HOME 等。)则可以使用 System.getenv 方法,但是由于某些原因,该方法被去掉了,直到 JDK1.5 后,该方法又被加进去 [3] 。

        * 获取一个系统环境变量

    //获取JAVA_HOME环境变量:
    System.out.println("JAVA_HOME = " + System.getenv("JAVA_HOME") );

    输出:JAVA_HOME = C:\Program Files\Java\jdk1.6.0_07

    展开全文
  • 关于java读取环境变量、虚拟机参数 本文系统研究在springboot启动时传入参数,对于非springboot的普通 java项目也是相同的。 传参的参数类型 程序参数(Program arguments) 虚拟机选项(VM options) 环境变量...

    关于java读取环境变量、虚拟机参数

    本文系统研究在springboot启动时传入参数,对于非springboot的普通 java项目也是相同的。

    传参的参数类型

    • 程序参数(Program arguments)
    • 虚拟机选项(VM options)
    • 环境变量(Environment variables)

    后续为了方便,有时会称呼为:程序参数,vm参数,环境变量

    如何传参,如图:

    1、在IDEA等工具中是如何传的?

    如图:
    在这里插入图片描述

    注意:环境变量的命名建议不要用 my.env.var (带点的格式),虽然在idea里支持,但是在命令行上支持不好

    2、在命令行中是如何传
    export MY_ENV_VAR=myEnvVarValue
    java -Dmy.vm.options=myVmOptionsValue -jar app.jar programArgs1 programArgs2
    

    说明:

    • 程序参数:在app.jar后列出
    • vm参数:传的时候用 -D,格式 -Dvar_name=var_value。(vm参数不限于虚拟机参数,可以自定义
    • 环境变量:
      • 需要两行命令实现,提前通过 export 设置(该设置当前会话有效)
      • 设置的环境变量不支持点号,如export my.env.var=xxxx 会报错
      • 是可以获取到设置在/ect/profile等地方的环境变量的,但是根据执行命令的用户不一样,可能可见性有差别,建议如果要传环境变量,通过本例子直接设置的方式

    如何读取:

    • 程序变量只能传给main方法,即入口方法
    • vm变量,读取用 System.getProperty(...)
    • 环境变量,读取用 System.getenv(...)
    public static void main(String[] args) {
      // 程序变量
      System.out.println(Arrays.toString(args));
    
      // vm变量
      String myVmOptions = System.getProperty("my.vm.options");// 正确
      String myVmOptions2 = System.getenv("my.vm.options");// 错误,读到null
      Properties vmProps = System.getProperties();// 读取所有
    
      // 环境变量(命名规范建议不用点,在idea里没问题,在命令行出错)
      String myEnvVar = System.getenv("MY_ENV_VAR");// 正确
      String myEnvVar2 = System.getProperty("MY_ENV_VAR");// 错误,null值
      Map<String, String> envMap = System.getenv();// 读取所有
    
      SpringApplication.run(VmOptionsSystemPropertyApplication.class, args);
    }
    

    吐槽:真是奇葩的方法命名,getenv(),为什么不是 getEnv()

    补充

    对于vm参数,除了自己设定的,其实还有很多默认就有的,可能是vm虚拟机设入的。常见的有line.separatorfile.separatorpath.separatoruser.name如下代码运行后可以打印出vm参数

    public class AllVmOptionsAndEnvVaribles {
        private static ObjectMapper objectMapper = new ObjectMapper();
        public static void main(String[] args) throws JsonProcessingException {
            System.out.println(objectMapper.writeValueAsString(new HashMap<>(System.getProperties())));
            System.out.println("----------------------------------------");
            System.out.println(objectMapper.writeValueAsString(System.getenv()));
        }
    }
    

    疑惑

    通过stonewang用户,在命令行可以得到这个环境变量的值,该值是在/etc/profile中的

    echo $SCALA_HOME
    

    但是在程序却无法获取,程序也是stonewang启动的

    很奇怪的是,同样在 /etc/profle 中设置的 JAVA_HOME 却能够在程序里却可以获取,不解。/

    展开全文
  • Java读取环境变量

    千次阅读 2009-03-24 11:45:37
    读取环境变量时可以使用 System.getProperty 或 System.getenv 方法。 System.getProperty 方法( JDK1.4 )用来读取针对 JVM 的属性,如程序当前的运行路径、路径分隔符、 Java 版本等, ( 见 System.getProperty...

    读取环境变量时可以使用 System.getProperty 或 System.getenv 方法。

    System.getProperty 方法( JDK1.4 )用来读取针对 JVM 的属性,如程序当前的运行路径、路径分隔符、 Java 版本等, ( 见 System.getProperty() 参数大全 ) ,它也可以读取在运行程序时设置的自定义属性。


        * 获取一个JVM已定义属性


    //获取系统当前的运行路径
    System.out.println("current path = " + System.getProperty("user.dir") );   

    输出:current path = E:\program\java\test\Test

        * 获取应用程序的属性:

    在命令中输入下面的命令,其中的-D用于设置一个属性 -D<name>=<value>

    SET myvar=Hello world
    SET myothervar=nothing
    java -Dmyvar="%myvar%" -Dmyothervar="%myothervar%" myClass

    myClass中读取这些属性

    String myvar = System.getProperty("myvar");
    String myothervar = System.getProperty("myothervar");

    如果要读取操作系统的环境变量(如 Path 、 TEMP 或 TMP 、 JAVA_HOME 等。)则可以使用 System.getenv 方法,但是由于某些原因,该方法被去掉了,直到 JDK1.5 后,该方法又被加进去 [3] 。

        * 获取一个系统环境变量

    //获取JAVA_HOME环境变量:
    System.out.println("JAVA_HOME = " + System.getenv("JAVA_HOME") );

     输出:JAVA_HOME = C:\Program Files\Java\jdk1.6.0_07

     


    参考:

     

    [1] Read environment variables from an application

    http://www.rgagnon.com/javadetails/java-0150.html


    [2] Retrieve environment variables (JDK1.5)

    http://www.rgagnon.com/javadetails/java-0466.html


    [3] Retrieve environment variable (JNI)

    http://www.rgagnon.com/javadetails/java-0460.html



      [4]Common XP environment variables

    http://www.rgagnon.com/pbdetails/pb-0254.html






    展开全文
  • 在web开发的过程中不免需要读取一些自定义的jvm系统变量或者环境变量.比如定义一些通用的log文件.或者数据库访问路径. 我们可以使用System.getProperties()读取所有的系统变量.通过System.getProperty("name");获取...

    在web开发的过程中不免需要读取一些自定义的jvm系统变量或者环境变量.比如定义一些通用的log文件.或者数据库访问路径.

    我们可以使用System.getProperties()读取所有的系统变量.通过System.getProperty("name");获取特定的系统变量

    System.getenv();获取环境变量.System.getenv("name")获取特定的环境变量

    转载于:https://www.cnblogs.com/monkeydai/p/7113607.html

    展开全文
  • java 获取环境变量In Java, how to get the value (string) of an environment variable? 在Java中 ,如何获取环境变量的值( 字符串 )? You may call the System.getenv(name) library function in Java to get ...
  • Java 获取环境变量及系统属性 当程序中需要使用与操作系统相关的变量(例如:文件分隔符、换行符)时,Java提供了 System 类的静态方法 getenv() 和 getProperty() 用于返回系统相关的变量与属性,getenv() 方法返回...
  • 1、Java 获取环境变量Java 获取环境变量的方式很简单: System.getEnv() 得到所有的环境变量 System.getEnv(key) 得到某个环境变量的值Map map = System.getenv(); Iterator it = map.entrySet().iterator(); ...
  • java读取系统环境变量

    千次阅读 2009-10-23 09:22:00
    import java.io.IOException;import java.io.InputStream;import java.util.Enumeration;import java.util.Iterator;import java.util.Map;import java.util.Properties;public class ReadEnv {
  • Java 获取环境变量

    千次阅读 2019-08-30 13:39:17
    import org.junit.Test;...import java.util.Map; import java.util.Properties; /** * 功能说明: * */ public class TestEnv { public static void main(String[] args) { System.out.println("output envir...
  • Win10 修改JAVAHOME环境变量无效,默认java -version不变问题1、造成该原因的三个路径(环境变量)2、解决方法 1、造成该原因的三个路径(环境变量) 1、C:\Program Files (x86)\Common Files\Oracle\Java\javapath;...
  • 前言 环境变量这个概念不陌生, 就是操作系统的环境变量。 系统变量就是java本身维护的变量。 通过 System.getProperty 的方式获取。...Java 获取环境变量的方式很简单:  System.getE
  • System.getEnv("BITSFLOW_HOME");
  • 度娘:环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统...
  • wuhuif读取操作系统环境变量 wuhuif读取操作系统环境变量/**文件名:SysProb.java描述: 取得当前系统变量的程序。 java中的System.getProperty只是针对JVM来的,如果要取得系统环境变量,还要用到系统相关的函数...
  • Win10 java JDK环境变量的设置 很多小伙伴下载好JDK后对配置环境变量这件事很头疼,其实设置JDK环境变量只需要三步,到底是哪三步呢,让我们一起来看看吧。 1 .进入设置环境变量界面 首先,桌面上找到“我的...
  • 但是crontab有一个坏毛病,就是它总是不会缺省的从用户profile文件中读取环境变量参数,经常导致在手工执行某个脚本时是成功的,但是到crontab中试图让它定期执行时就是会出错。   1,新建一个文件,比如...
  • linux下java环境变量.doc

    2013-04-16 18:15:22
    linux下java环境变量.doc
  • 最近入了一台MBP,java环境搭建好后却发现如题的问题。。 ``` System.out.println(System.getenv("NEST_HOME")...导致现在maven install都是需要在终端内打mvn install,eclipse里面直接报错找不到环境变量
  • java 读取系统环境变量和值

    千次阅读 2009-05-21 16:38:00
    package system.properties...import java.util.Enumeration;import java.util.Properties;/** * */public class Info { /** * create time:2009-5-21 下午04:34:50 * @param args */ public static void main
  • Java环境变量配置

    千次阅读 2015-10-13 09:55:32
    如果你想使用eclipse,myeclipse,IDEA,netbeans等IDE开发,请忽略此文,因为这些IDE并不需要配置,它们中有的是直接读取环境变量中的JRE/JDK目录,有的是自带JDK,有的是安装时设置+读取方式。综上,你如果用IDE...
  • 方便快捷设置环境变量。运行方式:单击右键,选择"以管理员身份运行",然后输入完整的JDK安装路径就可以了
  • Java环境变量PATH与CLASSPATH的区别

    千次阅读 2019-07-12 21:07:00
    在安装JDK时需要添加环境变量,经常使用的环境变量有两个: PATH与CLASSPATH 下面总结一下环境变量的作用。 PA...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 211,574
精华内容 84,629
关键字:

java读取环境变量

java 订阅