gpt4 book ai didi

Java无法获取环境变量(系统属性)

转载 作者:行者123 更新时间:2023-11-30 03:35:32 27 4
gpt4 key购买 nike

我需要我的代码在使用 IntelliJ 运行测试时能够获取环境变量:

private String sdkDir = System.getProperty("sdk.root");

问题是这始终是 null ,我已将两者设置为 bashrc还有bash_profile但并不真正适用于 Ubuntu。

bashrcbash_profile两者都有这个:

export JAVA_HOME=/home/xybrek/zulu1.8.0_25-8.4.0.1-x86lx64
export JAVA_OPTIONS="-Dsdk.root=/home/xybrek/java-sdk-1.9.17"
export PATH=$PATH:/home/xybrek/zulu1.8.0_25-8.4.0.1-x86lx64/bin
export PATH

我的配置可能缺少什么?

更新:

我无法更改 Java 代码:System.getProperty("sdk.root");因为这是来自编译的 Arquillian 容器,我无法修改。

我需要的是一种正确的方式来拥有这个 System.getProperty获取值的方法。

将这个“sdk.root”放在哪里以便 IntelliJ 获取它?在属性文件或 bash 中?

最佳答案

你必须使用

String val = System.getenv( "PATH" );

表示环境变量的值。属性值与进程的环境无关。

String val = System.getProperty( "sdk.root");

用于属性。

应该有一种在对话框中设置命令行参数的方法,以便准备在 IDE 中执行 Java 程序。这是您应该定义 -Dsdk.root=....的地方

关于Java无法获取环境变量(系统属性),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28002327/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com