bash_profile не может получить версию узла - PullRequest
1 голос
/ 26 февраля 2020

В моем ~/.bash_profile у меня есть

export SBT_OPTS="${SBT_OPTS} -Dsbt.jse.engineType=Node -Dsbt.jse.command=$(which node)"

, а также есть узел в

$ which node
/Users/alijy/.nvm/versions/node/v12.14.1/bin/node

Но когда я запускаю окно терминала fre sh, узел не найден / заменили в скрипте, и я получил

echo $SBT_OPTS
-Dsbt.jse.engineType=Node -Dsbt.jse.command=

На терминале я попытался

$ export SBT_OPTS="-Dsbt.jse.engineType=Node -Dsbt.jse.command=$(which node)"
$ echo $SBT_OPTS
-Dsbt.jse.engineType=Node -Dsbt.jse.command=/Users/alijy/.nvm/versions/node/v12.14.1/bin/node

, который работает нормально и находит узел.

Что не так с моим Скрипт bash_profile?

Любая помощь приветствуется.

1 Ответ

1 голос
/ 26 февраля 2020

Итак, когда ваш экспорт SBS_OPTS выполняется, он не имеет информации о «узле». Это означает, что PATH для узла не загружается до этого времени, и именно поэтому команда «узел» не работает.

Откройте терминал и выполните

echo $PATH

Вы увидите / Users / alijy / Там есть .nvm / Versions / Node / v12.14.1 / bin

Теперь найдите, где он добавляется в переменную PATH. Для этого просканируйте ваши файлы .bash_profile и .bashr c. Какой бы файл это ни был, убедитесь, что он загружен, прежде чем ваша команда "export SBT_OPTS =".

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