การเรียกใช้กรรมหลังจากการติดตั้งผลลัพธ์ใน 'กรรม' ไม่ได้รับการยอมรับว่าเป็นคำสั่งภายในหรือภายนอก


109

ฉันพยายามเรียกใช้กรรมเป็นส่วนหนึ่งของโครงการเชิงมุมเมล็ดพันธุ์หลังจากติดตั้งกรรมโดยใช้

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 \ กรรม.conf.js"% *

ฉันยังพยายามไปที่ "\ AppData \ Roaming \ npm \ node_modules \ กรรม \ bin" และเห็นไฟล์กรรมเมื่อฉันพยายามเรียกใช้ฉันได้รับอีกครั้ง:

"กรรม" ไม่ได้รับการยอมรับว่าเป็นคำสั่งภายในหรือภายนอกโปรแกรมที่ใช้งานได้หรือไฟล์แบตช์

ข้อเสนอแนะใด ๆ ? หากไม่โปรดแนะนำวิธีใช้ดอกมะลิโดยไม่ใช้กรรม

ขอบคุณ.


2
ลองnpm install karma -g
ศิวาตุ้มมา

@liorarma เป็นคำพ้องความหมายของกรรม - รันเนอร์ดังนั้นจึงมีการแมปโดยอัตโนมัติเมื่อคุณแก้ไข
Flexo

@ เฟล็กโซขอบคุณ ฉันไม่รู้ แต่ฉันเชื่อว่ามันต้องมีการแท็กเฉพาะเช่น html จะรวม html5 (อาจจะ?) หรือแม้แต่ html5-canvas
Lior Elrom

คำตอบ:


320

อินเทอร์เฟซบรรทัดคำสั่งอยู่ในแพ็คเกจแยกต่างหาก

ในการติดตั้งการใช้งานนี้:

npm ติดตั้ง -garma-cli


17
คนที่พวกเขาจริงๆไม่ได้เก็บเอกสารเหล่านี้ได้ถึงวันที่: / karma-runner.github.io/0.8/intro/installation.html (3 ปีหลังจากที่คำตอบนี้เอกสารบอกว่าnpm install -g karma && karma startที่ไม่ทำงาน)
หยุดใส่ร้าย Monica Cellio

2
@sequoiamcdowell docs for Karma เป็นเวอร์ชันคุณจะไม่เห็นการอัปเดตใด ๆ สำหรับเวอร์ชันเก่า ตรวจสอบเอกสารสำหรับรุ่นล่าสุดarma-runner.github.io/0.12/intro/installation.html
pkozlowski.opensource

อย่าลืมเรียกใช้สิ่งนี้ในฐานะผู้ดูแลระบบ
Jerry

1
ฉันไม่อยากจะเชื่อเลยว่าสิ่งนี้จะผ่านรอยแตก
Cody

ฉันใช้เวลาอย่างน้อยหนึ่งชั่วโมงในการกำจัดสิ่งสกปรกออก ฉันคิดว่ามันเป็นปัญหา. net framework โซลูชันนี้จะใช้งานได้แม้ว่าคุณจะเห็นข้อผิดพลาด. net framework: "MSBUILD: error MSB3428: ไม่สามารถโหลดคอมโพเนนต์ Visual C ++" VCBuild.exe "ในการแก้ไขปัญหานี้ 1) ติดตั้ง. NET Framew ork 2.0 SDK 2) ติดตั้ง Microsoft Visual Studio 2005 หรือ 3) เพิ่มตำแหน่งของคอมโพเนนต์ไปยังเส้นทางของระบบหากติดตั้งที่อื่น " โชคดีที่ฉันพบทางออกของคุณและมีกรรมที่จะโหลด ขอบคุณ!
ThinkBonobo

17

กรรม - คลิ

ขอแนะนำให้ติดตั้งกรรมด้วย Command-Line-Interface ( Karma-cli ) ซึ่งจะดูแลการเรียกกรรมที่เหมาะสม คุณยังสามารถติดตั้งเวอร์ชันท้องถิ่นที่แตกต่างกันโดยเฉพาะสำหรับแต่ละโปรเจ็กต์ที่คุณกำลังดำเนินการอยู่และarma-cli จะเลือกเวอร์ชันที่เหมาะสม

จากหน้าการติดตั้งกรรม :

พิมพ์ดีด./node_modules/karma/bin/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

โชคดี!


7

บน windows เมื่อคุณติดตั้ง npm (ไม่ใช่แบบโกลบอล - ดังนั้นหากไม่มี-gแฟล็ก) คำสั่งปฏิบัติการจะถูกเชื่อมโยงในnode_modules\.binโฟลเดอร์

ตัวอย่างเช่น:

powershell> .\node_modules\.bin\karma start

powershell> .\node_modules\.bin\karma run


ฉันได้รับข้อผิดพลาดจากการอนุญาตเพิ่มเติมด้วยวิธีนี้ดังนั้นฉันจึงต้องเรียกใช้ไฟล์ cmd จริง.\node_modules\.bin\karma.cmd startและมันก็ใช้ได้ผลสำหรับฉัน
Nick Tallents

6

ฉันมีปัญหาเดียวกันและแก้ไขโดยแก้ไขตัวแปรสภาพแวดล้อม PATH ของฉัน

ขั้นตอนที่ 1:ไปที่เส้นทางต่อไปนี้และตรวจสอบว่ามีกรรม cmd อยู่ในตำแหน่งที่ระบุด้านล่าง

[เส้นทางโฟลเดอร์ Nodejs] \ node_modules \ .bin <=> C: \ Program Files \ nodejs \ node_modules \ .bin

ขั้นตอนที่ 2:หากมีให้ไปที่ขั้นตอนที่ 3 หากไม่มีให้รันคำสั่งต่อไปนี้npm install -garma

ขั้นตอนที่ 3:เปิดตัวแปรสภาพแวดล้อมและแก้ไขเส้นทาง

ขั้นตอนที่ 4:เพิ่มสิ่งต่อไปนี้ในตอนท้าย:

[เส้นทางโฟลเดอร์ Nodejs] \ node_modules \ .bin; <=> "C: \ Program Files \ nodejs \ node_modules \ .bin"

ออกจากระบบเซสชันของคุณและจะใช้งานได้อย่างแน่นอน


4

ขึ้นอยู่กับไดเรกทอรีของคุณที่ใช้\AppData\Roamingคุณใช้ Windows และข้อผิดพลาดนี้มักเกิดขึ้นเนื่องจากเส้นทางไปยัง npm globals ไม่ได้อยู่ใน Windows PATHหรือNODE_PATHตัวแปรสภาพแวดล้อม

ใช้SETเพื่อตรวจสอบค่าที่คุณใช้สำหรับเส้นทางและหากไดเรกทอรี npm ของคุณไม่อยู่ในรายการนั่นจะเป็นปัญหา

หากคุณไม่ต้องการให้ npm บันทึกลงในไดเร็กทอรีนี้ให้ตรวจสอบตัวเลือกการกำหนดค่า npmและเอกสารโฟลเดอร์ npmเพื่อดูว่าคุณสามารถเปลี่ยนแปลงอะไรได้บ้างในเรื่องนี้ ...


ฉันพยายามเพิ่ม npm ไปยังพา ธ โดยใช้คำสั่งต่อไปนี้ "set PATH =" C: \ Users \ Liad \ AppData \ Roaming \ npm;% PATH% "แต่ก็ยังไม่มีอะไรเลยคุณสามารถบอกได้ไหมว่าตำแหน่งเฉพาะของ ไฟล์ประหารกรรมของคุณ?
Liad Livnat

บนระบบปฏิบัติการ Windows ของฉันฉันมีชุด NPM C:\npmกับการใช้งาน บางส่วนของ Windows ที่ฉันทำอยู่บน XP ซึ่งมีปัญหาเรื่องความยาวของเส้นทางดังนั้นฉันจึงต้องการให้เส้นทางทั้งหมดสั้นที่สุด หากคุณใช้ XP นั่นอาจเป็นปัจจัยสนับสนุน ... และอาจใช้ Windows เวอร์ชันล่าสุด (???)
Matthew Bakaitis

2

"กรรม" ไม่ได้รับการยอมรับว่าเป็นคำสั่งภายในหรือภายนอกโปรแกรมที่ใช้งานได้หรือไฟล์แบตช์

หากวิธีแก้ไขปัญหาที่กล่าวมาข้างต้นไม่ได้ผล สาเหตุของปัญหาคือ nodejs เวอร์ชันก่อนหน้า ดังนั้นให้ถอนการติดตั้ง nodejs เวอร์ชันก่อนหน้าและติดตั้งเวอร์ชันล่าสุดอีกครั้ง จะช่วยแก้ปัญหาของคุณได้ ในขณะที่ฉันเผชิญสิ่งเดียวกันและการเปลี่ยนแปลงข้างต้นมันได้ผลสำหรับฉัน

ขอบคุณ.


1

เอกสารอย่างเป็นทางการที่https://karma-runner.github.io/0.12/intro/installation.htmlทำให้สับสน หมายความว่า npm install -garma-cli คือการติดตั้งกรรมทั่วโลก แต่จริงๆแล้วจำเป็นสำหรับการเรียกใช้กรรมจากบรรทัดคำสั่ง


-1

ฉันมี'karma' is not recognized as an internal or external command, operable program or batch file.ปัญหาเดียวกันเมื่อฉันพยายามติดตั้งลงในไฟล์โครงการของฉันโดยตรง เมื่อฉันเคยnpm install -g karma-cliติดตั้งทั่วโลกทุกอย่างทำงานได้ดี

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.