Код ошибки: 800A1391 Источник: ошибка выполнения Microsoft JScript. Запуск Grunt - модуль не определен
Здесь новый пользователь Grunt, который сегодня использует много новых инструментов (npm nodejs).
Я установил Grunt и смог создать файл grunt.js, используя задачу init, как описано здесь: http://net.tutsplus.com/tutorials/javascript-ajax/meeting-grunt-the-build-tool-for-javascript/ и здесь: https://github.com/cowboy/grunt/blob/master/docs/getting_started.md. Но всякий раз, когда я запускаю команду "grunt", я получаю сообщение об ошибке:
Windows Script Host Скрипт: c:\users\[]\Documents\code\grunt\grunt.js Линия: 2 Char: 1 Ошибка: "модуль" не определен Код: 800A1391 Источник: ошибка времени выполнения Microsoft JScript
10 ответов
Как объясняется в FAQ, вам нужно набрать grunt.cmd
вместо этого на Windows, потому что ОС пытается запустить grunt.js
Или вы можете вместо этого установить глобально Grunt-Cli. Этот пакет будет запускать любую версию Grunt, если он был установлен локально для вашего проекта.
Решено!!
Таким образом, эта проблема возникает из-за того, что Windows по умолчанию ассоциирует < *.js > файлы с >> "Microsoft Windows Based Script Host".
grunt нужно открыть по умолчанию с помощью (grunt.cmd).
легко изменить, изменив приложение по умолчанию (открыть с помощью..)
Руководство:
Перейти к любому файлу JavaScript с расширением "JS". (любой файл)
Щелкните правой кнопкой мыши (мышь)> Свойства> "Открыть с помощью:" Изменить... (кнопка)
Выберите "Блокнот" (или любую javascript IDE).
ПРОБЛЕМА РЕШЕНА!:) удачи
Если вы получаете "ошибку времени выполнения Microsoft JScript", это означает, что node.js даже не вызывается; Вместо этого Windows Script Host пытается запустить ваш код. Это, вероятно, проблема с ассоциациями типов файлов; По умолчанию Windows IIRC пытается выполнить файл ".js" с WSH. Возможно, вам придется создать ярлык для вашего скрипта, указав командную строку (возможно, что-то вроде "узла%1") и начальный каталог, чтобы убедиться, что он выполняется правильно.
Было бы полезно, если бы вы могли точно сказать нам, как вы пытаетесь вызвать свой код.
Похоже, что в последних версиях модулей grunt вам нужно будет сделать следующее, чтобы он работал под Windows:
удалить любое глобально установленное ворчание
npm uninstall -g grunt
установить Grunt-Cli во всем мире
npm install -g grunt-cli
установить grunt локально в ваш проект
npm install grunt
глобальная установка grunt (v0.4.x), похоже, больше не создает необходимый grunt.cmd. похоже, что сейчас рекомендуется установить grunt локально, чтобы можно было использовать специфичные для версии Gruntfiles
Как и предположил Флориан Ф., работает grunt.cmd. Это связано с тем, что Windows ищет ваш grunt
команда.
При наборе текста grunt -h
Windows продолжит поиск следующих файлов:
- ./grunt.cmd
- ./grunt.* (в этом случае находится grunt.js, поэтому вы видите "модуль не определен")
- % APPDATA% / НМП / grunt.cmd
Альтернативой использованию "grunt.cmd" является использование grunter, который просто переименовывает команду в grunter... тогда у вас больше нет этой проблемы.
Чтобы ответить на этот вопрос, сначала нам нужно понять, что ошибка вызвана тем, что она выполняется Windows Script Host.
Теперь запустите код из вашего приглашения cmd со следующим синтаксисом:
>node <application_name>.js
это позволит приложению Node.js открываться через движок JavaScript V8(Google).
PS: Пожалуйста, ответьте, если это помогло в решении вашей проблемы, или опубликуйте проблему, с которой вы столкнулись после попытки.
У меня была похожая проблема, проблема в ассоциации файлов, я бы порекомендовал:
- щелкните правой кнопкой мыши файл.js и выберите открыть с помощью.
- затем вы выбираете nodejs/node.exe (где-то в папке "программные файлы"
- затем сделайте галочку, где написано "всегда открывать.js файлы" (перефразируя)
Это должно делать свое дело.
Я столкнулся с той же проблемой при запуске старого проекта Node.
Проблема была в имени файла js, это было node.js
. Итак, во время выполнения командыnode node.js
, он открывал диалоговое окно Windows.
Я просто изменил имя файла на app.js
и ошибка слетела.
Решение:
Перейдите к любому файлу javascript с расширением «js». (любой файл)
Щелкните правой кнопкой мыши (мышь) > Свойства > «Открывается с помощью:» Изменить... (кнопка)
Выберите Блокнот (или любую Javascript IDE, например VS Code ).
Итак, в моем случае я попробовал все вышеперечисленное безрезультатно. Но у меня есть фонд, который я не набираю: узел в полном предложении, как в следующем фрагментеnode script.js
И помните, никогда не недооценивайте собственное неправильное кодирование.