L'esecuzione del karma dopo l'installazione risulta in "karma" non viene riconosciuto come un comando interno o esterno


108

Sto cercando di gestire il karma come parte di un progetto semi angolare , dopo aver installato karma using

npm install -g karma

Ottengo:

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

quando provo a eseguire test.bat da angular-client \ scripts, il contenuto di questo file è:

imposta BASE_DIR =% ~ dp0

inizio karma "% BASE_DIR% .. \ config \ karma.conf.js"% *

Ho anche provato a navigare in "\ AppData \ Roaming \ npm \ node_modules \ karma \ bin" e ho visto il file karma, quando provo a eseguirlo ottengo di nuovo:

"karma" non viene riconosciuto come comando interno o esterno, programma eseguibile o file batch.

Eventuali suggerimenti? In caso contrario, suggerisci come usare il gelsomino senza karma.

Grazie.


2
Provanpm install karma -g
Siva Tumma

@lior karma è un sinonimo di karma-runner, quindi è stato mappato automaticamente quando lo hai modificato.
Flexo

@Flexo, grazie. Non lo sapevo, tuttavia credo che debba essere anche un tag specifico come html includerà html5 (forse?) O anche html5-canvas
Lior Elrom

Risposte:


319

L'interfaccia della riga di comando si trova in un pacchetto separato.

Per installare questo uso:

npm installa -g karma-cli


17
Amico, davvero non tengono aggiornati questi documenti: / karma-runner.github.io/0.8/intro/installation.html (poiché 3 anni dopo questa risposta i documenti dicono npm install -g karma && karma startche non funziona).
Smettila di calunniare Monica Cellio

2
I documenti di @sequoiamcdowell per Karma sono dotati di versione, non vedrai alcun aggiornamento per la vecchia versione. Controlla i documenti per l'ultima versione karma-runner.github.io/0.12/intro/installation.html
pkozlowski.opensource

assicurati di eseguirlo come amministratore
Jerry

1
Non posso credere che questo passi attraverso le crepe
Cody

Ho passato almeno un'ora a cercare una soluzione. Ho pensato che fosse un problema di .net framework. Questa soluzione funzionerà anche quando viene visualizzato l'errore .net framework: "MSBUILD: errore MSB3428: impossibile caricare il componente Visual C ++" VCBuild.exe ". Per risolvere questo problema, 1) installa .NET Framew ork 2.0 SDK, 2) installare Microsoft Visual Studio 2005 o 3) aggiungere la posizione del componente al percorso di sistema se è installato altrove. " Fortunatamente ho trovato la tua soluzione e ho caricato il karma. Grazie!
Think Bonobo

17

il karma-cli

Si consiglia di installare karma con la sua interfaccia a riga di comando ( karma-cli ) che si occuperà di recuperare il karma appropriato. Puoi anche installare una versione locale diversa specifica per ogni progetto su cui stai lavorando e karma-cli sceglierà quella appropriata.

Dalla pagina di installazione del karma :

Digitare ./node_modules/karma/bin/karma start fa schifo, quindi potresti trovare utile installare karma-cli a livello globale:

npm install -g karma-cli

Ora, controlla che il karma sia stato installato digitando:

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

e controlla che il server del karma funzioni (ctr + c per uscire):

karma start 

Puoi anche verificare che karma sia stato installato andando in questa directory:

cd /usr/local/lib/node_modules/karma

In bocca al lupo!


7

Su Windows quando installi un npm (non globale, quindi senza -gflag), i comandi eseguibili sono collegati nella node_modules\.bincartella.

Per esempio:

powershell> .\node_modules\.bin\karma start

powershell> .\node_modules\.bin\karma run


Ricevo errori basati su autorizzazioni aggiuntive in questo modo, quindi ho dovuto eseguire il file cmd effettivo .\node_modules\.bin\karma.cmd starte ha funzionato per me
Nick Tallents

6

Ho avuto lo stesso problema e l'ho risolto correggendo la mia variabile d'ambiente PATH.

PASSO 1: vai al seguente percorso e assicurati che karma.cmd sia presente nella posizione indicata di seguito

[Percorso cartella Nodejs] \ node_modules \ .bin <=> C: \ Program Files \ nodejs \ node_modules \ .bin

FASE 2: Se presente passare alla FASE 3, se non presente eseguire il seguente comando npm install -g karma

PASSAGGIO 3: aprire le variabili di ambiente e modificare PATH

PASSAGGIO 4: aggiungere quanto segue alla fine:

[Percorso cartella Nodejs] \ node_modules \ .bin; <=> "C: \ Programmi \ nodejs \ node_modules \ .bin"

Esci dalla sessione e funzionerà di sicuro.


4

In base all'utilizzo della directory \AppData\Roaming, sei su Windows e questo errore è solitamente dovuto al fatto che il percorso per le variabili globali npm non è nelle variabili di ambiente PATHo di Windows NODE_PATH.

Utilizzare SETper controllare i valori che si stanno utilizzando per i percorsi e se la directory npm non è elencata, questo sarà il problema.

Se non vuoi che npm salvi in ​​questa directory, controlla le opzioni di configurazione di npm e la documentazione delle cartelle npm per vedere cosa puoi cambiare a questo proposito ...


ho già provato ad aggiungere il npm al percorso utilizzando il seguente comando "set PATH =" C: \ Users \ Liad \ AppData \ Roaming \ npm;% PATH% ", beh ancora niente, puoi dirmi dove si trova la posizione esatta di il tuo file di esecuzione del karma?
Liad Livnat

Sul mio sistema Windows, ho impostato npm per l'uso C:\npm. Alcune delle cose di Windows che faccio è su XP che ha problemi di lunghezza del percorso, quindi volevo mantenere il percorso totale il più breve possibile. Se sei su XP, questo potrebbe essere un fattore che contribuisce ... e forse anche su versioni più recenti di Windows (???).
Matthew Bakaitis

2

"karma" non viene riconosciuto come comando interno o esterno, programma eseguibile o file batch.

Se la soluzione sopra menzionata non funziona, allora La causa del problema è la versione precedente di nodejs. Quindi disinstalla la versione precedente di nodejs e reinstalla l'ultima versione. Risolverà il tuo problema. Come ho affrontato lo stesso e facendo i cambiamenti sopra ha funzionato per me.

Grazie.



-1

Ho avuto lo stesso: 'karma' is not recognized as an internal or external command, operable program or batch file.problema quando ho provato a installarlo direttamente nel mio file di progetto. Quando ero abituato npm install -g karma-cliall'installazione globale, tutto funzionava perfettamente.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.