找不到Scala sbt -D环境变量

问题描述 投票:0回答:1

我正在尝试访问sbt构建文件中的环境变量。如前所述,我使用jvm -D Option设置了环境变量

sbt -DaccessToken=***** compile

但是scala找不到变量

 sys.env.get("accessToken").getOrElse(throw new RuntimeException("System variable 'accessToken' with the credentials is not set."))

为什么-D选项无效?如果我在Linux中用export设置了变量,那么一切都会正常。

scala sbt
1个回答
0
投票

您以-D身份通过的任何内容都不是环境变量,因此无法读取为sys.env.get

您需要使用Java API读取它们

System.getProperty("accessToken")

其他选项是在启动sbt之前分配环境变量。例如,在bash中,可以这样进行,但这当然取决于您的环境。

accessToken=***** sbt compile
© www.soinside.com 2019 - 2024. All rights reserved.