Scala переменная sbt -D environemt не найдена - PullRequest
0 голосов
/ 27 апреля 2020

Я пытаюсь получить доступ к переменной окружения в моем файле сборки 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 не имеет эффекта? Если я установлю переменную с помощью export в linux, все будет работать нормально.

1 Ответ

0 голосов
/ 27 апреля 2020

Все, что вы передаете как -D, не является переменной окружения и не может быть прочитано как sys.env.get.

Вам необходимо использовать Java API для их чтения

System.getProperty("accessToken")

Другое опция заключается в том, чтобы назначить переменную среды перед запуском вашего sbt. Например, в bash это можно сделать следующим образом, но это, конечно, зависит от вашей среды.

accessToken=***** sbt compile
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...