Node.js کا استعمال کرتے ہوئے 'ماڈیول تلاش نہیں کر سکتے' کی خرابی کو کیسے حل کریں؟

Node Js Ka Ast Mal Krt Wy Ma Ywl Tlash N Y Kr Skt Ky Khraby Kw Kys Hl Kry



دیگر پروگرامنگ زبانوں کی طرح، Node.js کو ایپلیکیشن سورس کوڈ کو چھوٹے ٹکڑوں میں توڑنے کی ضرورت نہیں ہے۔ یہ تمام سورس کوڈ کو '.js' فائل میں لکھتا ہے اور ترجمان کو کوئی مسئلہ نہیں ہوتا ہے۔ تاہم، ایک بہت ہی پیچیدہ Node.js ایپلی کیشن بناتے وقت یہ تجویز کی جاتی ہے کہ سورس کوڈ کو چھوٹے ماڈیولز میں تقسیم کریں اور پھر انہیں ایک مربوط ایپلی کیشن میں جوڑ دیں۔

فوری آؤٹ لائن

Node.js میں ماڈیول کیا ہے؟

Node.js میں، ' ماڈیول ” ایک لائبریری سے مماثل ہے جو اپنے سیاق و سباق کی بنیاد پر کسی ایپلیکیشن کے ساتھ کنکشن بناتی ہے۔ یہ ڈویلپرز کو جب بھی ضرورت ہو انکیپسولڈ کوڈ کو دوبارہ استعمال کرنے کی اجازت دیتا ہے۔ اسے تین اہم زمروں میں تقسیم کیا گیا ہے: 'بلٹ ان'، 'لوکل' اور 'تھرڈ پارٹی' ماڈیولز۔ یہ ماڈیولز مزید طریقوں اور خصوصیات کی ایک وسیع رینج پر مشتمل ہیں جو اپنی فعالیت کے مطابق مخصوص آپریشن انجام دیتے ہیں۔







Node.js کا استعمال کرتے ہوئے 'کانٹ فائنڈ ماڈیول' کی خرابی کو کیسے حل کیا جائے؟

یہ سیکشن تمام ممکنہ وجوہات درج کرتا ہے جو 'ماڈیول تلاش نہیں کر سکتے' کی خرابی پیدا کرتی ہے اور اسے حل کرنے کے لیے قابل عمل حل بھی فراہم کرتا ہے:



وجہ 1: مطلوبہ ماڈیول انسٹال نہیں ہے۔

کی سب سے عام وجہ ' ماڈیول نہیں مل سکتا 'خرابی یہ ہے کہ مطلوب ہے' تھرڈ پارٹی ماڈیول انسٹال نہیں ہے۔ 'موجودہ Node.js پروجیکٹ میں۔ فرض کریں، ہم Node.js ایپلی کیشن میں تھرڈ پارٹی 'mysql' ماڈیول کو اس طرح درآمد کرتے ہیں:



const mysql = ضرورت ہے ( 'mysql' ) ;

مندرجہ بالا کمانڈ میں، ' درکار ہے() ' طریقہ کار میں موجودہ node.js ایپلی کیشن میں 'mysql' ماڈیول شامل ہے۔





'.js' فائل پر عمل کریں:

نوڈ انڈیکس. js

مندرجہ ذیل آؤٹ پٹ زیر بحث خرابی پیدا کرتا ہے کیونکہ 'mysql' ماڈیول موجودہ Node.js پروجیکٹ میں انسٹال نہیں ہے۔



حل: مطلوبہ ماڈیول انسٹال کریں۔

اوپر زیر بحث غلطی کا حل یہ ہے کہ 'کی مدد سے مطلوبہ ماڈیول کو صحیح طریقے سے انسٹال کیا جائے۔ این پی ایم / سوت 'پیکیج مینیجر. اس منظر نامے کے لیے، مطلوبہ 'mysql' ماڈیول 'npm' انسٹالیشن کمانڈ کے ساتھ انسٹال ہے:

npm mysql انسٹال کریں۔

آؤٹ پٹ موجودہ Node.js پروجیکٹ میں 'mysql' ماڈیول کی کامیاب تنصیب کو ظاہر کرتا ہے:

اب '.js' فائل کو دوبارہ چلائیں:

نوڈ انڈیکس. js

اس کا تجزیہ کیا جا سکتا ہے کہ مذکورہ کمانڈ 'ماڈیول تلاش نہیں کر سکتے' کی خرابی پیدا کیے بغیر کامیابی کے ساتھ عمل میں آئی:

وجہ 2: غلط ماڈیول کا راستہ

ایک اور وجہ ' ماڈیول نہیں مل سکتا 'غلطی یہ ہے' غلط ماڈیول کا راستہ ' یہ عام طور پر اس وقت ہوتا ہے جب صارف اپنے متعلقہ راستے سے مقامی ماڈیول درآمد کرتا ہے۔ فرض کریں، صارف مخصوص فولڈر میں ایک حسب ضرورت ماڈیول بناتا ہے اور اسے Node.js ایپلی کیشن میں درآمد کرتا ہے۔ ایسا کرنے سے پہلے، یقینی بنائیں کہ مخصوص راستہ درست ہے ورنہ زیر بحث غلطی کا سامنا کرنا پڑے گا۔

مثال کے طور پر، ایک مقامی/صارف کی وضاحت کردہ ماڈیول کا نام ' myModule './custom-modules' فولڈر میں موجود ہے:

صارف مندرجہ بالا نمایاں کردہ 'myModule' کو موجودہ Node.js ایپلیکیشن میں اپنے متعلقہ راستے سے درآمد کرتا ہے:

const زبانیں = ضرورت ہے ( './myModule' ) ;

'.js' فائل چلائیں:

نوڈ انڈیکس. js

یہ دیکھا جا سکتا ہے کہ 'myModule' کے غلط راستے کی وجہ سے 'ماڈیول تلاش نہیں کیا جا سکتا' خرابی پیدا ہوئی ہے:

حل: درست ماڈیول پاتھ کی وضاحت کریں۔

اوپر زیر بحث غلطی کا حل یہ ہے کہ ماڈیول کے صحیح یا درست راستے کی وضاحت کی جائے جہاں یہ واقع ہے۔ یہاں، ہم نے 'ماڈیول تلاش نہیں کر سکتے' کی خرابی کو حل کرنے کے لیے 'myModule' کا صحیح راستہ پاس کیا:

const زبانیں = ضرورت ہے ( './custom-modules/myModule' ) ;

'.js' فائل شروع کریں:

نوڈ انڈیکس. js

یہ مشاہدہ کیا جا سکتا ہے کہ درج ذیل آؤٹ پٹ سامنے آنے والی خرابی کو ظاہر نہیں کرتا ہے کیونکہ درآمد شدہ ماڈیول کا مخصوص راستہ درست کر دیا گیا ہے:

وجہ 3: غلط ماڈیول کا نام (کیس حساس)

ماڈیولز ہیں ' حساس کیس لینکس اور میک او ایس میں، جیسے کہ اگر ماڈیول کا نام بڑے حروف میں انسٹال ہے اور صارف اسے چھوٹے میں درآمد کرتا ہے تو پھر ' ماڈیول نہیں مل سکتا 'خرابی پیدا ہو جائے گی۔ اس کی وجہ یہ ہے کہ اصل ماڈیول کے نام اور امپورٹ سٹیٹمنٹ میں مماثلت نہیں ہے۔

یہاں، انسٹال کردہ 'csvtojson' ماڈیول کو Node.js ایپلیکیشن میں 'بڑے' میں درآمد کیا جاتا ہے۔

const csvtojson = ضرورت ہے ( 'CSVTOJSON' ) ;

'.js' فائل پر عمل کریں:

نوڈ انڈیکس. js

آؤٹ پٹ غلط ماڈیول نام کی وجہ سے 'ماڈیول تلاش نہیں کر سکتا' کی خرابی پیدا کرتا ہے:

حل: درست ماڈیول کا نام ٹائپ کریں۔

مذکورہ بالا خامی کا حل یہ ہے کہ درآمد شدہ ماڈیول کے صحیح کیس (نیچے یا اوپری) کی وضاحت کریں درکار ہے() 'طریقہ. اس منظر نامے میں، 'csvtojson' ماڈیول کو صحیح صورت میں 'require()' طریقہ میں بیان کیا گیا ہے:

const csvtojson = ضرورت ہے ( 'csvtojson' ) ;

'.js' فائل کو دوبارہ چلائیں:

نوڈ انڈیکس. js

اب، مندرجہ بالا کمانڈ نے 'ماڈیول تلاش نہیں کر سکتے' کی خرابی پیدا نہیں کی کیونکہ درآمد شدہ پیکیج کیس اس کے اصل نام جیسا ہی ہے:

وجہ 4: غلط فائل ایکسٹینشن

' ماڈیول نہیں مل سکتا 'غلطی' کی وجہ سے بھی ہو سکتی ہے۔ غلط فائل کی توسیع ' غلط فائل پاتھ کی طرح یہ مقامی ماڈیولز کے معاملے میں ہوتا ہے۔ مثال کے طور پر، ایک مقامی ماڈیول '.json' فائل میں بنایا جاتا ہے اور Node.js ایپلی کیشن میں '.js' ایکسٹینشن کے ساتھ مخصوص کیا جاتا ہے پھر مندرجہ بالا خاص خرابی پیدا ہوتی ہے:

اس منظر نامے میں، ' myModule.js 'غلط ماڈیول پاتھ' میں دکھایا گیا وجہ نمونہ فائل کے طور پر لی گئی ہے۔ اس تک رسائی موجودہ Node.js ایپلی کیشن میں اس کی ایکسٹینشن '.json' کو اس طرح بتا کر حاصل کی جاتی ہے:

const زبانیں = ضرورت ہے ( './custom-modules/myModule.json' ) ;

'.js' فائل پر عمل کریں:

نوڈ انڈیکس. js

آؤٹ پٹ 'مائی موڈیول' فائل کی غلط فائل ایکسٹینشن کی وجہ سے 'ماڈیول ڈھونڈ نہیں سکتا' کی خرابی پیدا کرتا ہے۔

حل: درست فائل ایکسٹینشن ٹائپ کریں۔

زیر بحث غلطی کا حل درست فائل ایکسٹینشن کو ٹائپ کرنا ہے جس میں لوکل ماڈیول بنایا گیا ہے۔ مثال کے طور پر، ہم نے 'myModule.js' فائل کی درست فائل ایکسٹینشن کی وضاحت کی ہے تاکہ 'ماڈیول تلاش نہیں کیا جا سکتا' کی خرابی کو حل کیا جا سکے:

const زبانیں = ضرورت ہے ( './custom-modules/myModule.js' ) ;

'.js' فائل چلائیں:

نوڈ انڈیکس. js

اب، مندرجہ بالا کمانڈ کو 'ماڈیول تلاش نہیں کیا جا سکتا' کی غلطی دکھائے بغیر کامیابی سے عمل میں لایا گیا ہے:

وجہ 5: ایک ماڈیول کی عالمی تنصیب

نوڈ ماڈیول مقامی طور پر (ایک مخصوص پروجیکٹ کے لیے) یا عالمی سطح پر (تمام منصوبوں کے لیے) انسٹال کیے جاسکتے ہیں۔ لینکس میں ، اگر مطلوبہ ماڈیول عالمی سطح پر آپریٹنگ سسٹم میں انسٹال ہے اور مقامی تنصیب کے بغیر کسی مخصوص پروجیکٹ میں اس تک رسائی حاصل کی جاتی ہے تو ' ماڈیول نہیں مل سکتا 'خرابی پیدا ہوتی ہے۔

مثال کے طور پر، ' mongodb 'ماڈیول عالمی سطح پر لینکس آپریٹنگ سسٹم میں انسٹال کیا جاتا ہے' کے ذریعے sudo npm install -g mongodb کمانڈ اور مخصوص نوڈ پروجیکٹ میں مقامی طور پر اس تک رسائی حاصل کی جاتی ہے:

const mongodb = ضرورت ہے ( 'mongodb' )

'.js' فائل چلائیں:

نوڈ انڈیکس. js

آؤٹ پٹ زیر بحث خامی پیدا کرتا ہے کیونکہ موجودہ نوڈ پروجیکٹ میں 'mongodb' مقامی طور پر انسٹال نہیں ہے:

حل: مقامی طور پر ماڈیول انسٹال کریں۔

سامنے آنے والی خرابی کا حل یہ ہے کہ ماڈیول کو مقامی طور پر کسی مخصوص Node.js پروجیکٹ کے لیے لینکس پر مبنی آپریٹنگ سسٹم پر انسٹال کیا جائے۔

یہاں، ' mongodb 'ماڈیول کو موجودہ پروجیکٹ میں مقامی طور پر 'npm' انسٹالیشن کمانڈ کی مدد سے انسٹال کیا گیا ہے۔

npm mongodb انسٹال کریں۔

جب 'mongodb' کی مقامی تنصیب مکمل ہو جائے، تو اسے '.js' فائل میں درآمد کریں اور اس پر عمل کریں:

نوڈ انڈیکس. js

یہ دیکھا جا سکتا ہے کہ موجودہ Node.js پروجیکٹ کے لیے مقامی طور پر 'mongodb' ماڈیول انسٹال کر کے 'ماڈیول تلاش نہیں کر سکتے' کی خرابی کو حل کر دیا گیا ہے:

ونڈوز میں، ماڈیول کی عالمی اور مقامی تنصیب سے 'ماڈیول تلاش نہیں کیا جا سکتا' کی خرابی پیدا نہیں ہوتی ہے۔

وجہ 6: انٹری فائل غائب ہے۔

' ماڈیول نہیں مل سکتا ماڈیول کے 'package.json' میں مرکزی اندراج کی فائل کے غائب ہونے کی وجہ سے بھی خرابی پیدا ہو سکتی ہے۔ ہر ماڈیول کی مرکزی انٹری فائل بطور ڈیفالٹ 'index.js' فائل ہے۔

فرض کریں، اگر صارف اسے غیر ارادی طور پر ہٹا دیتا ہے تو اوپر کی غلطی پیدا ہو جائے گی۔ اس کی وجہ یہ ہے کہ مخصوص ماڈیول کو درآمد کرتے وقت ' درکار ہے() ' طریقہ اس ماڈیول کے فولڈر میں جاتا ہے اور انٹری پوائنٹ کو تلاش کرتا ہے، اگر یہ موجود نہیں ہے تو وہ اس ماڈیول کو Node.js ایپلی کیشن میں درآمد نہیں کر سکتا۔

مطلوبہ ماڈیول کی انٹری فائل 'index.js' اس کے فولڈر کی ساخت کے اندر موجود ہے۔ ذیل کا ٹکڑا 'mysql' ماڈیول کی انٹری فائل کو دکھاتا ہے:

اب، اوپر نمایاں کردہ 'index.js' فائل کو 'mysql' فولڈر سے ہٹا دیا جاتا ہے اور پھر 'mysql' ماڈیول کو Node.js ایپلی کیشن میں درآمد کیا جاتا ہے:

const mysql = ضرورت ہے ( 'mysql' )

'.js' فائل پر عمل کریں:

نوڈ انڈیکس. js

یہاں، آؤٹ پٹ 'مائی ایس کیو ایل' ماڈیول کی انٹری فائل غائب ہونے کی وجہ سے 'ماڈیول تلاش نہیں کر سکتا' کی خرابی پیدا کرتا ہے۔

حل: مطلوبہ ماڈیول دوبارہ انسٹال کریں۔

مذکورہ بالا غلطی کا حل یہ ہے کہ ' node_modules ڈائرکٹری اور مطلوبہ ماڈیول دوبارہ انسٹال کریں۔ یہاں، 'node_modules' ڈائرکٹری کو حذف کرنے کے بعد 'mysql' ماڈیول دوبارہ انسٹال ہوتا ہے۔

npm mysql انسٹال کریں۔

'mysql' کی کامیاب تنصیب کے بعد، نیا ' node_modules ڈائرکٹری خود بخود تیار ہوتی ہے جس میں 'mysql' ماڈیول کے فولڈر کی ساخت ہوتی ہے جس میں 'index.js' موجود ہوتا ہے:

اب، '.js' فائل کو دوبارہ چلائیں:

نوڈ انڈیکس. js

یہاں، آؤٹ پٹ 'mysql' ماڈیول کی 'index.js' نامی ایک انٹری فائل کی موجودگی کی وجہ سے کوئی 'ماڈیول ڈھونڈ نہیں سکتا' کی خرابی پیدا نہیں کرتا ہے۔

اگر 'ماڈیول نہیں ڈھونڈ سکتا' خرابی اب بھی برقرار رہتی ہے تو کیا کریں؟

اگر ' ماڈیول نہیں مل سکتا مندرجہ بالا حلوں میں سے کسی کے ساتھ حل کرنے کے بعد غلطی برقرار رہتی ہے پھر حذف کریں node_modules 'فولڈر۔ جب تھرڈ پارٹی ماڈیول انسٹال ہوتا ہے تو 'node_modules' فولڈر خود بخود تیار ہوجاتا ہے۔ اس میں وہ تمام تھرڈ پارٹی پیکجز ہیں جن پر Node.js پروجیکٹ کا انحصار ہے۔

مزید یہ کہ ' package-lock.json جب کوئی پیکج 'npm' کے ساتھ انسٹال ہوتا ہے تو فائل بھی خود بخود بن جاتی ہے۔ یہ انحصار کے ساتھ ساتھ ذیلی انحصار کا ریکارڈ رکھتا ہے جس پر پیکیج ان کے ورژن کے ساتھ منحصر ہے۔ اگر پیکج 'یارن' کے ساتھ انسٹال ہے تو اس فائل کا نام ہے ' yarn.lock '

حل: 'node_modules' فولڈر اور 'package-lock.json' فائل کو ہٹا دیں۔

درپیش غلطی کا حل یہ ہے کہ 'node_modules' فولڈر اور 'package-lock.json/yarn.lock' فائل کو حذف کر کے مطلوبہ پیکج کو دوبارہ انسٹال کریں۔

لینکس میں مندرجہ بالا درج کردہ فولڈر اور فائلوں کو نیچے بیان کردہ کی مدد سے حذف کیا جا سکتا ہے۔ rm (ہٹائیں)' کمانڈ:

rm - rf node_modules پیکیج - تالا json // فولڈر اور فائل کو حذف کریں۔

ls // فائل اور ڈائریکٹریز ڈسپلے کریں۔

مندرجہ بالا کمانڈ میں ' -r 'جھنڈا مخصوص فولڈر کو حذف کرتا ہے' بار بار اس کی تمام ذیلی ڈائریکٹریوں سمیت f 'جھنڈا مترجم کو یہ کام کرنے کو کہتا ہے' زبردستی ”:

آؤٹ پٹ سے پتہ چلتا ہے کہ 'node_modules' فولڈر اور 'package-lock.json/yarn.lock' فائل کو موجودہ Node.js پروجیکٹ سے مکمل طور پر ہٹا دیا گیا ہے:

ونڈوز میں ، صارف 'node_modules' فولڈر اور 'package-lock.json/yarn.lock' فائل کو صرف دبا کر حذف کر سکتا ہے۔ حذف کریں ' کلید یا ڈراپ ڈاؤن مینو سے 'حذف' اختیار کا استعمال کرتے ہوئے.

یہ سب Node.js میں 'ماڈیول تلاش نہیں کر سکتے' کی خرابی کو حل کرنے کے بارے میں ہے۔

نتیجہ

حل کرنے کے لیے ' ماڈیول نہیں مل سکتا 'غلطی، 'مطلوبہ ماڈیول انسٹال کریں'، 'اس کا صحیح راستہ بتائیں'، 'درست کیس کو 'ضرورت ()' طریقہ میں ٹائپ کریں، اور 'درست فائل ایکسٹینشن بھی ٹائپ کریں'۔ مزید یہ کہ Node.js پروجیکٹ میں 'مقامی طور پر ماڈیول انسٹال' کرنے کے لیے بھی حل کیا جا سکتا ہے۔ اگر خاص خرابی برقرار رہتی ہے تو پھر 'node_modules' فولڈر، 'package-lock.json' فائل کو ہٹا دیں، اور پھر 'npm/yarn' کے ذریعے مطلوبہ ماڈیول دوبارہ انسٹال کریں۔ اس پوسٹ میں Node.js کا استعمال کرتے ہوئے 'ماڈیول تلاش نہیں کر سکتے' کی خرابی کو حل کرنے کے لیے ان کے حل کے ساتھ تمام ممکنہ وجوہات پر تبادلہ خیال کیا گیا ہے۔