osx:为什么可以';Java读取我的环境变量吗?

osx:为什么可以';Java读取我的环境变量吗?,java,macos,Java,Macos,我在mac上创建了一个名为“api_url”的环境变量。我希望Java读取该变量并将其存储为字符串 为什么下面的代码不起作用?请注意,在底部,输出为“null” 您使用的是System.getProperty,它用于获取JVM属性,而不是环境变量。您需要使用System.getenv(“api\uURL”) 你误解了这里的某些内容。属性是。要访问环境变量,必须使用System.getenv()而不是System.getProperty() 试试stringurl=System.getenv(“a

我在mac上创建了一个名为“api_url”的环境变量。我希望Java读取该变量并将其存储为字符串

为什么下面的代码不起作用?请注意,在底部,输出为“null”


您使用的是
System.getProperty
,它用于获取JVM属性,而不是环境变量。您需要使用
System.getenv(“api\uURL”)


你误解了这里的某些内容。属性是。要访问环境变量,必须使用
System.getenv()
而不是
System.getProperty()


试试
stringurl=System.getenv(“api_url”)

仅作记录:即使在使用正确的调用
getenv()
时,也必须确保运行IDE的进程已看到该env变量。在一个shell中导出它不会使它对其他已经存在的进程可见!