Узел не распознан

Узел не распознан

Ссылаясь на изображение выше, может ли кто-нибудь объяснить, почему мой сценарий NPM постоянно терпит неудачу, говоря, что node не распознается.

nodejs явно находится в моем $ PATH, и он правильно определяет, где он находится на моем компьютере, вне сценария npm.

Я использую Git Bash внутри ConEMU в версии Windows 10.0.17134, сборка 17134.

Я не удивлюсь, если проблема связана с Windows, поскольку проблема, похоже, возникла после последнего обновления ОС, установленного чуть более недели назад (у меня эта проблема была примерно столько же времени)

Почему все элементы на вашем пути разделены : (двоеточием). В Windows они должны быть разделены ; (точка с запятой). Или ваша оболочка так странно показывает это? Вы уверены, что фактический путь настроен правильно? Можете ли вы запустить узел из обычной консоли Windows?

jfriend00 27.05.2018 07:32

Я не уверен, почему они разделены двоеточием. Когда я их устанавливаю, я использую пользовательский интерфейс переменных среды в свойствах системы. В этом нет двоеточий или чего-то еще, поэтому я предполагаю, что терминал отображает это так.

Denno 27.05.2018 07:53

Работает ли узел в общей консоли Windows? Вам необходимо определить, является ли это общей проблемой Windows или как-то связано с вашей консольной средой.

jfriend00 27.05.2018 07:55

Да, я могу нормально запустить сценарий npm внутри командной строки Windows и внутри Windows PowerShell. Это означает, что проблема связана с Git Bash. Использует ли Git Bash другую переменную $ PATH при запуске сценариев npm?

Denno 27.05.2018 07:58

Возможно это актуально: Git Bash не видит мой путь к Windows

jfriend00 27.05.2018 08:03

Спасибо за предложение. К сожалению, я уже изучал этот вопрос и ответы, пока у меня была эта проблема, но, похоже, это не помогает ... Я пробовал следующее на моем .bashrc: export PATH = "$PATH:/c/nodejs" и "PATH=$PATH;/c/nodejs" и "PATH=$PATH:/c/nodejs" и "PATH=$PATH;C:\nodejs" и несколько других вариантов, каждый раз перезапуская Git Bash для проверки результата, но ничего не помогло.

Denno 27.05.2018 08:12

Вы пытались ввести node.exe вместо node, как было предложено в ответе на этот вопрос?

jfriend00 27.05.2018 08:13

К сожалению, этот сценарий npm - всего лишь тестовый пример. Проблема, с которой я действительно столкнулся, заключается в попытке запустить npm install в одном из моих проектов, но когда дело доходит до установки node-sass, npm пытается вызвать узел, но не может. Поэтому я не могу поменять node на node.exe

Denno 27.05.2018 08:15

Что ж, в одном из этих ответов говорится, что требуется node.exe. Я сам не знаю git bash.

jfriend00 27.05.2018 08:16

К сожалению, поэтому ответы там бесполезны для моей ситуации.

Denno 27.05.2018 08:19

Открытый вопрос: Избегайте ввода расширения имени файла для исполняемых файлов Windows с некоторыми предложениями.

jfriend00 27.05.2018 08:22

Меня больше всего беспокоит то, что я занимаюсь разработкой на этой машине в течение многих лет. Чуть более недели назад мне пришлось переустановить зависимости узлов из-за проблемы безопасности, которую GitHub заметил с одной из моих зависимостей. Итак, чтобы он внезапно перестать работать невероятно бесит

Denno 27.05.2018 08:24

У вас есть переменная окружения pathext? См. epsil.github.io/blog/2016/04/20/#update-pathext.

jfriend00 27.05.2018 08:30

Я делаю (глядя в панель управления переменными среды Windows). Значение .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PHP. Полагаю, я буду искать .EXE? Что там

Denno 27.05.2018 08:34

Наконец-то он заработал! Кровавая Windows ... Мне пришлось переместить переменную окружения из конца в начало ... Ясно, что Windows не понравилось, что $ PATH был таким длинным, и поэтому не выполнял синтаксический анализ до записи nodejs -_-

Denno 27.05.2018 08:38

Это не объясняет, почему он отлично работал из командной строки Windows. Это больше похоже на проблему Git Bash, обрабатывающую длинный путь, а не на проблему Windows. В любом случае, рад, что вы нашли способ исправить.

jfriend00 27.05.2018 08:42

Спасибо, что обсудили со мной варианты

Denno 27.05.2018 08:43
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
17
71
1

Ответы 1

Наконец-то он заработал! Неудивительно, что это проблема Windows. Поскольку у меня было несколько записей в моем $ PATH, а одна из nodejs была в конце, Windows автоматически завершалась ошибкой при чтении всего пути и не доходила до записи nodejs. Исправление заключалось в перемещении nodejs в панели управления Environment Variables на самый верх.

Другие вопросы по теме