/ usr / bin / env: «узел»: нет такого файла или каталога при запуске задачи vscode - PullRequest
0 голосов
/ 01 сентября 2018

У меня есть базовая настройка задачи для создания моих файлов TypeScript и Sass. Это выглядит так:

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "Gulp Build",
      "group": "build",
      "command": "./node_modules/.bin/gulp",
      "type": "shell",
      "args": [
        "build"
      ],
      "problemMatcher": []
    }
  ]
}

Когда я нажимаю Ctrl + Shift + B , чтобы выбрать задачу сборки, я выбираю одну выше и в моем терминале я получаю это:

> Выполнение задачи: ./node_modules/.bin/gulp build <</p>

/ usr / bin / env: ‘node’: такого файла или каталога нет
Терминальный процесс завершен с кодом выхода: 127

Я экспортировал переменные:

.gnomerc и .bashrc :

export PATH="$NVM_BIN:$NPM_HOME:$PATH"

Примечание: Оба Node и NPM были установлены с использованием NVM

Если я открою редактор из моего Избранное или через Деятельности , я получу вышеуказанную ошибку. Если я открою из командной строки, он работает нормально. Как я могу заставить это работать без необходимости каждый раз открываться из командной строки?

1 Ответ

0 голосов
/ 15 февраля 2019

Это происходит потому, что .bashrc не загружается для задач, так как они не являются интерактивными оболочками. Вам необходимо загрузить улучшения оболочки nvm для неинтерактивных оболочек, а также использовать глобальные пакеты, установленные через nvm, чтобы быть доступными для VS Code.

Создайте новый текстовый файл с именем, скажем, nvm-autoload.sh и поместите его в папку /etc/profile.d/, чтобы запустить его для всех оболочек входа в систему, включая оболочки задач для кода VS. Добавьте в этот файл следующее:

# Enable nvm if available
if [ -f ~/.nvm/nvm.sh ]; then
  source ~/.nvm/nvm.sh
fi

Вам может потребоваться выйти из системы и войти, чтобы это вступило в силу.

...