scala - Scala sbt -D 未找到环境变量
问题描述
我正在尝试访问我的 sbt 构建文件中的环境变量。正如我所说,我使用 jvm -D 选项设置环境变量
sbt -DaccessToken=***** compile
但是scala找不到变量
sys.env.get("accessToken").getOrElse(throw new RuntimeException("System variable 'accessToken' with the credentials is not set."))
为什么 -D 选项没有效果?如果我在 linux 中使用export设置变量,一切正常。
解决方案
您传递的任何内容-D
都不是环境变量,也不能被读取为sys.env.get
.
您需要使用 Java API 来阅读它们
System.getProperty("accessToken")
其他选项是在启动 sbt 之前分配一个环境变量。例如,在 bash 中,可以这样做,但这当然取决于您的环境。
accessToken=***** sbt compile
推荐阅读
- azure - 回复 url 中间的 Azure AD 通配符((不是结尾或乞求))不起作用
- python - 如何计算每个大陆的首都城市数量?
- php - Laravel 护照和社交名媛 facebook 登录/认证
- docker - docker-compose 是否构建图像并运行容器?
- linux - 如何在 AOSP 根目录中添加包含文件的文件夹?
- python - 我的 Minimax 算法出了什么问题?
- r - 使用闪亮的输入作为列名,如果为空则使用字符串
- python - 为生成图的节点赋予属性
- sapui5 - XML 视图中的自定义控件用法。部署后出错:找不到对象类
- html - 为什么 CSS Grid 中的空列不折叠?