2016-09-26 3 views
0

Wenn mocha mit istanbul (istanbul cover _mocha) läuft manchmal die Nachricht Error: Cannot find module './command' und ich muss den Ordner node_modules entfernen und neu installieren, damit es wieder funktioniert.Fehler: Kann Modul './command' nicht finden, wenn es istanbul

Bis jetzt konnte ich die genauen Bedingungen dieses Ereignisses nicht replizieren, ist aber meist nachdem ich mehrere Tests durchgeführt habe.

Mocha funktioniert immer noch, und zwischen meinen Abhängigkeiten zum Testen (Mocha, Chai und Istanbul) Befehlsmodul erscheint nur als direkte Abhängigkeit in Istanbul. Derzeit mit "istanbul": "^0.4.5" und node 6.6.0

Antwort

1

Ich habe das Gefühl, dies kann aufgrund Ihrer Node_Module/.bin/Ordner mit Dateien anstelle der erwarteten Symlinks sein. Dies kann passieren, indem Sie Ihren Repo in ein anderes Verzeichnis kopieren, in dem node_modules bereits installiert ist. Um dies zu beheben, versuchen Sie dies:

cd bad_repo_dir 
rm -fr node_modules 
cd ../good_repo_dir 
cp -a node_modules ../bad_repo_dir 
cd ../bad_repo_dir 
npm test 

Dieses -a auf dem Kopierbefehl sagt es Attribute sowie symbolische Links zu duplizieren, usw. Ich hoffe, das hilft!