Ich habe node.js verwendet, um Karma zu installieren. Mein erster Versuch schlug fehl, als der folgende Befehl auf dem Terminal ausgeführt wurde:
npm install -g karma
Das schlug fehl und ich entschied mich für:
sudo npm install -g karma
Nach Eingabe meines Passworts schien es korrekt zu installieren. Ich füge einen Teil der Ausgabe der Installation ein. Vielleicht bedeutet dies jemandem etwas und ist für meine Frage relevant. Nach all den npm http-Nachrichten sehe ich Folgendes:
> ws@0.4.27 install /usr/local/share/npm/lib/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws
> (node-gyp rebuild 2> builderror.log) || (exit 0)
CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
SOLINK_MODULE(target) Release/bufferutil.node
SOLINK_MODULE(target) Release/bufferutil.node: Finished
CXX(target) Release/obj.target/validation/src/validation.o
SOLINK_MODULE(target) Release/validation.node
SOLINK_MODULE(target) Release/validation.node: Finished
/usr/local/share/npm/bin/karma -> /usr/local/share/npm/lib/node_modules/karma/bin/karma
karma@0.8.6 /usr/local/share/npm/lib/node_modules/karma
├── pause@0.0.1
├── dateformat@1.0.2-1.2.3
├── xmlbuilder@0.4.2
├── colors@0.6.0-1
├── chokidar@0.6.2
├── growly@1.1.1
├── mime@1.2.9
├── q@0.9.6
├── rimraf@2.1.4 (graceful-fs@1.2.3)
├── coffee-script@1.6.3
├── minimatch@0.2.12 (sigmund@1.0.0, lru-cache@2.3.0)
├── optimist@0.3.5 (wordwrap@0.0.2)
├── glob@3.1.21 (inherits@1.0.0, graceful-fs@1.2.3)
├── LiveScript@1.0.1 (prelude-ls@1.0.1)
├── log4js@0.6.6 (dequeue@1.0.3, semver@1.1.4, async@0.1.15, readable-stream@1.0.2)
├── lodash@1.1.1
├── http-proxy@0.10.3 (pkginfo@0.2.3, utile@0.1.7)
├── istanbul@0.1.22 (abbrev@1.0.4, which@1.0.5, fileset@0.1.5, nopt@2.0.0, wordwrap@0.0.2, async@0.1.22, mkdirp@0.3.5, esprima@0.9.9, escodegen@0.0.24, handlebars@1.0.12)
└── socket.io@0.9.16 (base64id@0.1.0, policyfile@0.0.4, redis@0.7.3, socket.io-client@0.9.16)
Wenn ich dann versuche, den folgenden Befehl auszuführen, um mit diesem Befehl eine Karma-Konfigurationsdatei zu erstellen:
karma init karma.config.js
Dies ist die Nachricht, die zurückgegeben wird:
-bash: karma: command not found
Ich habe den gleichen Befehl mit sudo zuvor versucht, aber ich erhalte das gleiche Ergebnis.
Hat jemand eine Idee, was los ist? Jede Hilfe wird geschätzt.
*Aktualisieren! Ich habe beschlossen, eine Datei mit dem Namen: builderror.log zu überprüfen, die sich in: /usr/local/share/npm/lib/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws befindet
Das zeigt es:
gyp WARN EACCES user "root" does not have permission to access the dev dir "/Users/eperez/.node-gyp/0.10.5"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/share/npm/lib/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws/.node-gyp"
gyp http GET http://nodejs.org/dist/v0.10.5/node-v0.10.5.tar.gz
gyp http 200 http://nodejs.org/dist/v0.10.5/node-v0.10.5.tar.gz
quelle
which karma
. Ich habe erlebt, wie npm Dinge an einem nicht standardmäßig im Pfad befindlichen Speicherort installiert, denke ich bei Arch. Ich erinnere mich nicht, wohin es ging, obwohl es mir leid tut :( ps Sie können tuncd /; find|grep karma
, um alle Dateinamen auf dem System mit Karma in Dateinamen oder Pfad zu erhaltenusage: find [-H | -L | -P] [-EXdsx] [-f path] path ... [expression] find [-H | -L | -P] [-EXdsx] -f path [path ...] [expression]
find
Programm verhält sich anders als meins. Auf jeden Fall müssen Sie herausfinden, wo npm Material installiert hat, und sicherstellen, dass der Ordner zu Ihrem Pfad für Ihre Terminalsitzungen hinzugefügt wird. FWIW auf meiner Linux Mint-Installation,npm -g
legt Sachen in/usr/local/bin
npm install -g karma-cli
Antworten:
@mayankcpdixit gab die Antwort dort oben in einer Antwort auf die ursprüngliche Frage des OP, aber ich werde sie hier noch einmal einfügen, falls jemand sie verpasst.
Sie müssen nicht alles deinstallieren, und wenn ich für jedes npm-Paket, das ich zu installieren versuche, manuell einen neuen Pfadlink hinzufügen müsste, würde ich mich wahrscheinlich selbst erschießen.
Boom. Jetzt haben Sie Karma-Befehlszeilen installiert. Genau wie Grunzen.
Bearbeiten: Bitte vergessen Sie nicht, auch @mayankcpdixit zu bewerten , er hat den ursprünglichen Beitrag direkt kommentiert, aber die Frage nicht "beantwortet".
quelle
-g
dass Sudo-Privilegien erforderlich sind, so sollte es seinsudo npm install -g karma-cli
;)~/.bash_profile
Ändern SiePATH
in Ihrer (oder einer ähnlichen) Änderung Ihre , um von npm installierte Binärdateien aufzunehmen:export PATH="$PATH:/usr/local/share/npm/bin"
Ich hatte genau das gleiche Problem und fand diese Lösung weniger zeitaufwändig und wirkungsvoll als die vollständige Neuinstallation des Knotens.
BEARBEITEN dies hat auch für andere in funktioniert
bash_profile
export PATH="$PATH:/usr/local/lib/node_modules/karma/bin"
quelle
export PATH="$PATH:/usr/local/lib/node_modules/karma/bin"
in~/.bash_profile
.Es wird empfohlen, Karma mit seiner Befehlszeilenschnittstelle ( karma-cli ) zu installieren, die sich um das Abrufen des entsprechenden Karmas kümmert. Sie können auch eine andere lokale Version installieren, die für jedes Projekt, an dem Sie arbeiten, spezifisch ist, und karma-cli wählt die entsprechende aus.
Von der Karma- Installationsseite :
Die Eingabe von ./node_modules/karma/bin/karma start saugt, sodass es möglicherweise nützlich ist, karma-cli global zu installieren:
Überprüfen Sie nun, ob Karma installiert wurde, indem Sie Folgendes eingeben:
Sie können auch überprüfen, ob Karma installiert wurde, indem Sie in dieses Verzeichnis gehen:
Viel Glück!
quelle
Node.js muss nicht vollständig deinstalliert werden
Gerade
Dann
installieren node.js
Dann
installiere Karma neu
Das hat bei mir funktioniert.
quelle
Ich musste
export PATH="$PATH":/usr/local/lib/node_modules/npm/node_modules/karma/bin
nach der Installation von Karma mit hinzufügensudo npm install karma
.hoffe das hilft.
quelle
Gehen Sie einfach zu test.sh:
Finden:
$BASE_DIR/../node_modules/karma/bin/karma start $BASE_DIR/../config/karma.conf.js $*
Ersetzen mit:
/usr/local/bin/karma start $BASE_DIR/../config/karma.conf.js $*
Oder:
karma start $BASE_DIR/../config/karma.conf.js $*
quelle
Ich stand auch vor dem gleichen Problem. Es sieht so aus, als ob Karma für die Befehlszeile ein separates Paket ist, das von installiert werden kann
npm install -g karma-cli
quelle
Beim Upgrade von Karma 0.10 auf 0.12 wird die Verknüpfung zur ausführbaren Karma-Datei entfernt.
Sie können es mit zurückbekommen
quelle
Versuchen Sie, node.js neu zu installieren. Es gibt viele Möglichkeiten, es zu installieren, aber ich empfehle das Herunterladen von nodejs.org
Wenn das nicht funktioniert, können Sie versuchen, Karma neu zu installieren.
quelle