ارور در نصب npm

2 سال پیش
توسط developer آپدیت شد
developer ( 32671 تجربه )
3 سال پیش
تخصص : برنامه نویس

موقعی که میزنم npm i این ارور رو میده:

$ npm i

> node-sass@4.5.3 install C:\Users\DELL\Desktop\App\node_modules\node-sass
> node scripts/install.js

npm WARN Error: EPERM: operation not permitted, scandir 'C:\Users\DELL\Desktop\App\node_modules\scss-tokenizer\node_modules'
npm WARN  { Error: EPERM: operation not permitted, scandir 'C:\Users\DELL\Desktop\App\node_modules\scss-tokenizer\node_modules'
npm WARN   stack: 'Error: EPERM: operation not permitted, scandir \'C:\\Users\\DELL\\Desktop\\App\\node_modules\\scss-tokenizer\\node_modules\'',
npm WARN   errno: -4048,
npm WARN   code: 'EPERM',
npm WARN   syscall: 'scandir',
npm WARN   path: 'C:\\Users\\DELL\\Desktop\\App\\node_modules\\scss-tokenizer\\node_modules' }
npm ERR! file C:\Windows\system32\cmd.exe\
npm ERR! path C:\Windows\system32\cmd.exe\
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn C:\Windows\system32\cmd.exe\
npm ERR! node-sass@4.5.3 install: `node scripts/install.js`
npm ERR! spawn C:\Windows\system32\cmd.exe\ ENOENT
npm ERR!
npm ERR! Failed at the node-sass@4.5.3 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\DELL\AppData\Roaming\npm-cache\_logs\2017-11-07T19_00_23_573Z-debug.log

راه حل چیه؟

بهترین پاسخ انتخاب شده توسط developer
developer
3 سال پیش

خب الحمدلله بعد 24 ساعت تلاش ارور رفع شد،
راه حل اینه:
اولا از یکی از نسخه های قبلی نود باید استفاده کرد نه آخرین نسخه.
ثانیا نود توی ویندوز32 نمیتونه بشناسه سیستم رو، واسه همین باید دستی بهش بگیم، توی پوشه نود توی lib/utils/lifecycle.js کد زیر رو اضافه میکنیم:

  var shFlag = "-c"

   if (process.platform === "win32") {
-    sh = "cmd"
+    sh = process.env.comspec || "cmd"
     shFlag = "/c"
     conf.windowsVerbatimArguments = true
   }

حالا به خوبی کار میکنه نود و همه پکیج ها نصب میشه.

تشکر از همه رفقا بابت راه حل ها.

captan ( 1176 تجربه )
3 سال پیش

این خطا رو در نسخه 5.5.1 و در محیط Power shell داشتم و پس از اینکه از cmd با دسترسی administrator استفاده کردم ، بدون مشکل پکیج مورد نظرم نصب شد .

developer ( 32671 تجربه )
3 سال پیش
تخصص : برنامه نویس

توی cmd با دسترسی ادمین هم امتحان کردم همون ارور رو میده، حدود نصف پکیج ها رو دان میکنه ولی وسطاش ارور میده

علیرضا اصلانی ( 11744 تجربه )
3 سال پیش
تخصص : Web and Mobile Developer

آخرین نسخه ی Nodejs رو از سایتش دانلود و نصب کنین دوباره تست کنین. ممکنه باگ از خود ورژن Npmتون باشه

developer ( 32671 تجربه )
3 سال پیش
تخصص : برنامه نویس

آخرین نسخه نود نصبه
یک نکته:
روی سیستم ام دیروز هم ومپ نصب بود و هم زمپ
ولی ومپ کامل نصب نبود و خودم کلا با زمپ کار میکنم
اروری که میداد میگفت فایل php توی ومپ ایراد داره
ومپ رو کلا ریموو کردم و دوباره نصب کردم

الان همین ارور رو میده.

ارور دیروزی اینجوری بود تقریبا:
همه متن ارور با همین ارور بالا یکی بود ولی اون خط میگفت:

npm ERR! path C:Windows\system32\cmd.exe\wamp\php.ini

باید به زمپ یا ومپ متصل باشه؟

مهدی ( 23172 تجربه )
3 سال پیش

اول اینکه اصلا به نظر من از زمپ و ومپ استفاده نکن بهترین گزینه برای ویندوز apachehaus.com/cgi-bin/download.plx
تو الان دو تا جا php رو نصب کردی که احتمالا هر دور به path environment variables اضافه شدن (در ضمن فک کنم wamp رو اشتباه به path اضافه کردی اگه cmd رو با run as اجرا میکنی حتما باید
آدرس php رو به path مربوط به system variable اضافه کنی نه user)
که باید بری توی environment variables حذفش کنی و در ضمن تو همین environment variables برو و ادرس مربوط به npm رو هم حذف کن و بعد uninstall کن و دوباره نصبش کن
در ضمن به نظر من اگه بدون xampp نصب کنی بهتره
خواستی بگو تمام مراحل نصب جداگانه رو بهت بگم

developer ( 32671 تجربه )
3 سال پیش
تخصص : برنامه نویس

زمپ و ومپ و نود رو کامل ریموو کردم، از توی path هم همه رو پاک کردم
دوباره ومپ و نود رو نصب کردم و به path اضافه کردم ولی باز هم همون ارور رو داد

نصف پکیج ها رو نصب میکنه ولی وقتی به node-sass میرسه ارور میده!

مهدی ( 23172 تجربه )
3 سال پیش

میگم این دستور رو اجرا کن چون کش بعد uninstall باقی میمونه

npm cache clean
developer ( 32671 تجربه )
3 سال پیش
تخصص : برنامه نویس

کش رو هم پاک کردم ولی بازم همون ارور رو میده!

مهدی ( 23172 تجربه )
3 سال پیش

پوشه node_modules رو حذف کن دوباره امتحان کن
نشد با یه یوزر دیگه از ویندوز امتحان کن

developer ( 32671 تجربه )
3 سال پیش
تخصص : برنامه نویس

خب الحمدلله بعد 24 ساعت تلاش ارور رفع شد،
راه حل اینه:
اولا از یکی از نسخه های قبلی نود باید استفاده کرد نه آخرین نسخه.
ثانیا نود توی ویندوز32 نمیتونه بشناسه سیستم رو، واسه همین باید دستی بهش بگیم، توی پوشه نود توی lib/utils/lifecycle.js کد زیر رو اضافه میکنیم:

  var shFlag = "-c"

   if (process.platform === "win32") {
-    sh = "cmd"
+    sh = process.env.comspec || "cmd"
     shFlag = "/c"
     conf.windowsVerbatimArguments = true
   }

حالا به خوبی کار میکنه نود و همه پکیج ها نصب میشه.

تشکر از همه رفقا بابت راه حل ها.

eli ( 195 تجربه )
2 سال پیش

سلام من تازه میخوام برنامه نویی با جاوا اسکرسیپت و شرو ع کنم برای همین میخواستم ember نصب کنم که از همون اول داره ارور میده همون اروری که تو سوال شما بود ولی اون کدی که گفتید دستی وارد کنیم رو نمیدونم باید کجا وارد کرد و لطفا راهنماییم کنید . اگه میشه کل پروژه نصب رو قدم به قدم برام توضیح بدی چون اصلا تو این زمینه هیچی بلد نیستم فقط یکم c++ , و یکم اندروید میدونم

developer ( 32671 تجربه )
2 سال پیش
تخصص : برنامه نویس

سلام @eli.elikz
این گفتگو واسه یک سال پیشه و دقیق یادم نیست چی بوده ولی ظاهرا باید توی پوشه نود ماژول توی این آدرس
lib/utils/lifecycle.js
این آدرس رو پیدا کنید و اون کد رو توی فایل اضافه کنید

eli ( 195 تجربه )
2 سال پیش

@alirezasafdari سلام
وقتی میخوام با کامند پرومپ بازش کنم سریع بسته میشه باید تو نوت پدش اضافه کنم ؟

developer ( 32671 تجربه )
2 سال پیش
تخصص : برنامه نویس

بله باید با یک ادیتور بازش کنید یا نوت پد یا پی اچ دی استورم یا ...
@eli.elikz

برای ارسال پاسخ باید وارد سایت شوید