当前位置: 首页 > 面试题库 >

在Java中获取环境变量值

东云
2023-03-14
问题内容

已在Windows机器(Windows 7)中设置了环境变量,并尝试从以下Java代码获取变量的值。但是,它返回一个空值。

final String value = System.getenv("PE_CONF_PWD");
System.out.println(value);
//print null

现在,如果我执行以下代码,它将引发安全异常,这意味着用户没有该变量。

SecurityManager m = new SecurityManager();
m.checkPropertyAccess("PE_CONF_PWD");
// java.security.AccessControlException: access denied ("java.util.PropertyPermission" "PE_CONF_PWD" "read")

后来,我在JRE安全策略文件中添加了权限,并添加了以下条目,但仍返回空值。

permission java.lang.RuntimePermission "getenv.PE_CONF_PWD";

问题答案:

此代码段不应返回null以便解决您的问题。

final String value = System.getenv("PE_CONF_PWD");


 类似资料:
  • 问题内容: 我正在为红宝石应用程序构建一个容器。我的应用程序的配置包含在环境变量中(通过dotenv加载到应用程序内部)。 这些配置变量之一是应用程序的公共ip,它在内部用于建立链接。我需要添加一个dnsmasq条目,将该ip指向容器内部的127.0.0.1,以便它可以获取应用程序的链接,就好像未对其进行容器化一样。 因此,我试图在我的Dockerfile中设置一个将环境变量传递给容器的。 我尝试

  • 我创建了一个java程序来进行ssh连接,并使用scp进行文件传输。我在jenkins中添加了用户名、主机名和密码作为环境变量。我需要在java程序中访问这些环境变量的值。 我尝试在我的java文件中使用以下选项,但它不起作用。 由于一些安全问题,我无法使用EnvironmentInjectorPlugin。你能给我指一下正确的方向吗。

  • 我必须得到一个环境变量,我不能注射。 我无法注入环境中的basUrl。 有人能告诉我怎么做吗? 我读了以下几页,我是初学者,因为我什么都不懂。https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.htmlhttps://www.mkyong.com/spring-bo

  • 问题内容: 我想知道是否可以 在configure build中的执行shell中访问Jenkins环境变量?如果可以,请给我一个例子 吗?我需要将环境信息与 测试的某些输出结合起来,以提供运行的完整报告(不使用插件)。 问题答案: 请检查。可以将所有环境变量与 在此处输入图片说明 成功构建后,您可以看到如下输出:

  • 问题内容: 从 尚未在Dockerfile中声明的Docker 容器获取环境变量的最简单方法 是什么 ? 例如,通过某个会话设置的环境变量? 我可以做到,但是我更喜欢只返回值的东西。 我尝试使用,但是替换似乎发生在容器外部,因此我没有从容器中获取env var,而是从我自己的计算机中获取了env var。 谢谢。 问题答案: 在容器中运行以使变量替换发生在容器中的正确方法是:

  • 我需要的是一种适当的方法,让这个方法获得值。 将这个“sdk.root”放在哪里,以便IntelliJ提取它?在属性文件中还是在bash中?