استكشاف أخطاء Node.js وإصلاحها
لم يتم العثور على إصدار محدد من الأوامر node / npm / pnpm / yarn
إذا واجهت خطأ مشابهًا لما يلي:
Warning: Specified Node.js version '22' for 'node' not found.
If this is not your intention, please delete the 'NODE_VERSION' configuration
from the '.servbay.config' file in the current directory.
2
3
هذا بسبب عدم تثبيت إصدار Node.js المقابل في ServBay، أو أن المستخدم يريد استخدام إصدار Node.js المدمج في nvm
ولكن لأسباب تتعلق بالتكوين، لا يمكنه العثور على Node.js المثبت بواسطة nvm
أو homebrew
.
نصيحة
بعد تثبيت ServBay، يكون ترتيب البحث عن أمر node كالتالي: ServBay -> nvm -> homebrew
السبب: بعد تثبيت ServBay، يقوم اسم برنامج نص ServBay بالاستفادة تلقائيًا من إصدار Node.js المثبت من قبل ServBay. عندما لا يتم العثور على إصدار معين من Node.js، سيعود تلقائيًا إلى الإصدار الافتراضي من Node.js المثبت بواسطة nvm
. إذا لم يكن nvm
مثبتًا على نظام المستخدم، أو كانت إعدادات nvm
غير صحيحة، فعندئذٍ سيعود إلى إصدار Node.js المثبت عبر homebrew
. إذا لم يتم العثور على Node.js المثبت بواسطة homebrew
أيضًا، فسيتم الإبلاغ عن الخطأ المذكور أعلاه.
حل: هناك بعض المستخدمين الذين قاموا بتثبيت nvm
واستخدموا nvm
لتثبيت Node.js، ولكن لا يزال يتلقون الخطأ أعلاه. هذا لأن متغير البيئة NVM_BIN
مفقود في إعدادات المستخدم. عند تثبيت nvm
، يقوم nvm
تلقائيًا بتكوين هذا المتغير.
يجب على المستخدم إصلاح هذا المتغير، حتى يتمكن من العثور على إصدار Node.js المثبت بواسطة nvm
بشكل صحيح.
عند استخدام حزم npm مثل node-sass
، تظهر رسالة بعدم دعم الهيكلية
يواجه المستخدمون الذين يستخدمون شرائح Arm64 مثل Apple Silicon (M1 / M2 / M3 / M4) أخطاء مثل Unsupported architecture (arm64)
عند استخدام بعض حزم npm القديمة (مثل node-sass
). السبب في ذلك هو أن شرائح M من Apple تعتمد على هيكلية Arm64، بينما تدعم حزم مثل node-sass
فقط هيكلية x86_64.
ERROR: Module Error (from ./node_modules/sass-loader/dist/cjs.js):
Node Sass does not yet support your current environment: OS X Unsupported architecture (arm64) with Node.js 14.x
For more information on which environments are supported
please see:
https://github.com/sass/node-sass/releases/tag/v4.14.1
2
3
4
5
حل:
- استبدال الحزم القديمة بحزم أكثر حداثة تدعم Arm64 (مثل تغيير
node-sass
إلىsass
).
npm uninstall node-sass
npm install --save-dev sass
2
- يوفر ServBay خيار تثبيت إصدار Node.js x86_64، حيث يمكن للمستخدم اختيار تثبيت Node.js بهيكلية x86_64 من واجهة تثبيت Node.js (ليس موصى به).