Подтвердить что ты не робот

Запуск кармы после установки приводит к "карме" не распознается как внутренняя или внешняя команда

Я пытаюсь запустить карму как часть проекта angular, после установки кармы с использованием

npm install -g karma

Я получаю:

'karma' is not recognized as an internal or external command, operable program or batch file.

когда я пытаюсь запустить test.bat из angular -client\scripts, содержимое этого файла:

установить BASE_DIR =% ~ dp0

начало кармы "% BASE_DIR%..\config\karma.conf.js" % *

Я также попытался перейти к "\ AppData\Roaming\npm\ node_modules\karma\bin" и увидел файл кармы, когда я пытаюсь запустить его, я снова получаю:

'karma' не распознается как внутренняя или внешняя команда, операционная программа или командный файл.

Любые предложения? Если нет, предложите, как использовать жасмин без кармы.

Спасибо.

4b9b3361

Ответ 1

Интерфейс командной строки находится в отдельном пакете.

Чтобы установить это использование:

npm install -g karma-cli

Ответ 2

karma-cli

Рекомендуется установить карму с помощью командной строки (karma-cli), которая позаботится о том, чтобы получить соответствующую карму. Вы также можете установить другую локальную версию для каждого проекта, над которым работаете, и карма-кли выберет подходящий.

На странице карма установки:

Ввод ./node_modules/karma/bin/karma start отстой, поэтому вам может быть полезно установить karma-cli по всему миру:

npm install -g karma-cli

Теперь убедитесь, что карма установлена, набрав:

which karma  //echo something like: /usr/local/bin/karma

и проверьте, что сервер кармы работает (ctr + c для выхода):

karma start 

Вы также можете проверить, что карма была установлена, перейдя в этот каталог:

cd /usr/local/lib/node_modules/karma

Удачи!

Ответ 3

Основываясь на вашем каталоге с помощью \AppData\Roaming, вы находитесь в Windows, и эта ошибка обычно связана с тем, что путь к глобальным глобальным часам npm не находится в переменных среды Windows PATH или NODE_PATH.

Используйте SET, чтобы проверить значения, которые вы используете для путей, и если ваш каталог npm не указан, это будет проблемой.

Если вы не хотите, чтобы npm сохранялся в этом каталоге, проверьте параметры конфигурации npm и npm folders docs, чтобы увидеть, что вы можете изменить в этом отношении...

Ответ 4

У меня была такая же проблема и исправлена ​​ее, исправляя переменную среды PATH.

ШАГ 1: перейдите к следующему пути и убедитесь, что karma.cmd присутствует в месте, указанном ниже

[Путь к папке Nodejs]\ node_modules \. bin <= > C:\Program Files\nodejs\ node_modules \. bin

ШАГ 2: Если присутствует, перейдите к STEP 3, если нет, запустите следующую команду npm install -g karma

ШАГ 3: Откройте переменные среды и отредактируйте PATH

ШАГ 4: Добавьте в конце следующее:

[путь к папке Nodejs]\ node_modules \. bin; <= > "C:\Program Files\nodejs\ node_modules \. bin"

Выйдите из сеанса, и он будет работать точно.

Ответ 5

В окнах, когда вы устанавливаете npm (не глобально - без знака -g), исполняемые команды связаны в папке node_modules\.bin.

Например:

powershell> .\node_modules\.bin\karma start

powershell> .\node_modules\.bin\karma run

Ответ 6

'karma' не распознается как внутренняя или внешняя команда, действующая программный или пакетный файл.

Если вышеупомянутое решение не работает, чем Причиной проблемы является предыдущая версия nodejs. Поэтому удалите предыдущую версию nodejs и переустановите последнюю версию.. Это решит вашу проблему. Поскольку я столкнулся с тем же, и, сделав выше изменения, это сработало для меня.

Спасибо.

Ответ 7

Официальная документация на https://karma-runner.github.io/0.12/intro/installation.html сбивает с толку. Это означает, что npm install -g karma-cli - установить карму глобально, но на самом деле это необходимо для запуска кармы из командной строки.

Ответ 8

У меня была такая же проблема: 'karma' is not recognized as an internal or external command, operable program or batch file., когда я попытался установить ее непосредственно в файл проекта. Когда я использовал npm install -g karma-cli для глобальной установки, все работало нормально.