নোড.জেএস, ত্রুটি: মডিউল 'এক্সপ্রেস' খুঁজে পাওয়া যায় না


125

আমি নোড.জেজে নতুন, আমার প্রথম ওয়েব অ্যাপ্লিকেশনটি তৈরি করতে এক্সপ্রেস শিখতে চেষ্টা করুন। আমি আমার প্রথম নমুনা কোডটিতে আটকে গিয়েছি এবং এটি চালু করতে কিছু সহায়তা দরকার। আমি এই প্রশ্নটি পোস্ট করার আগে, আমি স্ট্যাক ওভারফ্লোতে অনুসন্ধান করেছি, কিছু অনুরূপ প্রশ্ন পেয়েছি তবে এখনও এটি ঠিক করতে পারিনি।

ত্রুটি: মডিউল 'এক্সপ্রেস' খুঁজে পাওয়া যায় না

আমি ম্যাক ওএস 10.8.2 ব্যবহার করছি । আমি নোড.জেএস ব্যবহার করে ইনস্টল করেছি nvm

নোড.জেএস: নোডের 0.8.20 পাথ: / ব্যবহারকারী / হাফিলিক্সিত / এনভিএম / ভি0.8.20/ বিন / প্রকাশের নোড পাথ: / ব্যবহারকারী / ফিলেক্সিট / এনভিএম / নোড_মডিউলস / এক্সপ্রেস

এখানে আমার নমুনা কোডটি রয়েছে: এই ফাইলটি এখানে অবস্থিত:

/Users/feelexit/WebstormProjects/learnnode/node_modules/index.js

var express = require('express');

var app = express();

app.get('/', function(req, res){

    res.send('welcome to express');
});

app.listen(3000);

যখন আমি এই কমান্ডটি চালানোর চেষ্টা করি node index.js

আমি নিম্নলিখিত ত্রুটি বার্তা পেয়েছি, দয়া করে এটি ঠিক করতে আমাকে সহায়তা করুন।

ধন্যবাদ.

Error: Cannot find module 'express'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:362:17)
    at require (module.js:378:17)
    at Object.<anonymous> (/Users/feelexit/WebstormProjects/learnnode/node_modules/index.js:1:81)
    at Module._compile (module.js:449:26)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.runMain (module.js:492:10)
feelexits-Mac:node_modules feelexit$ 

চভির প্রশ্নের উত্তর দিতে আপডেট করুন:

feelexits-Mac:~ feelexit$ npm install
npm ERR! install Couldn't read dependencies
npm ERR! Error: ENOENT, open '/Users/feelexit/package.json'
npm ERR! If you need help, you may report this log at:
npm ERR!     <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR!     <npm-@googlegroups.com>

npm ERR! System Darwin 12.2.0
npm ERR! command "/Users/feelexit/nvm/v0.8.20/bin/node" "/Users/feelexit/nvm/v0.8.20/bin/npm" "install"
npm ERR! cwd /Users/feelexit
npm ERR! node -v v0.8.20
npm ERR! npm -v 1.2.11
npm ERR! path /Users/feelexit/package.json
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /Users/feelexit/npm-debug.log
npm ERR! not ok code 0

এই ইচ্ছার সাহায্যের হতে stackoverflow.com/questions/9133784/...
user568109

30
আপনি কি npm install
লিখেছেন

1
আপনি কি নিশ্চিত যে এক্সপ্রেস লাইব্রেরিটি আপনার "নোড_মডিউলগুলি" ফোল্ডারে রয়েছে? আপনি আপনার index.js ফাইলটি একটি ডিরেক্টরি "/ ব্যবহারকারী / ফ্লেলজিট / ওয়েবস্টর্মপ্রজেক্টস / লার্নোড /" এ সরানোর চেষ্টা করতে পারেন এবং নোড_মডিউলগুলি ফোল্ডারটি একা রেখে যেতে পারেন।
ডিফল্ট

1
আপনার package.jsonফাইল পোস্ট করুন। এটি সমস্যার ডিবাগ করতে সহায়তা করবে।
আখিল রায়না

@ শেভি, আমি এক্সপ্রেস ইনস্টল করতে এনপিএম ইনস্টল এক্সপ্রেস ব্যবহার করি। কেবল "এনপিএম ইনস্টল" কী করে?
কিঙ্কিং 126

উত্তর:


157

এটা বলে

 Cannot find module 'express'

আপনি কি এক্সপ্রেস ইনস্টল করেছেন? না হলে এটি চালান।

 npm install express

এবং আবার আপনার প্রোগ্রাম চালান।


1
এটি আমার ক্ষেত্রে সমস্যার সমাধান করে না। npm install expressএই ত্রুটি দেখায় npm ERR! Error: UNKNOWN, symlink '../express/bin/express'। এটি একটি গভীর সমস্যা বলে মনে হচ্ছে।
স্লিক

আপনি যদি এনপিএম-এর জন্য আপনার ডিরেক্টরি অনুমতিগুলি স্থির না করে থাকেন তবে sudo ব্যবহার করুন। যে কোনও ক্ষেত্রে, "সুডো এনপিএম ইনস্টল" একটি ভাল বিকল্প।
গৌরব গুপ্ত

সিমলিংক ত্রুটিগুলি প্রায়শই ঘটে থাকে, যদি আপনি বিশ্বব্যাপী জিনিসগুলি ইনস্টল করেন এবং, হ্যাঁ, সিমলিংকটি ভেঙে যায়। npm linkসম্পর্কিত লিঙ্কটি পুনরায় তৈরি করার চেষ্টা করুন ...
ফ্রাঙ্ক নোক

@ স্লিক আমি আপনার সমাধানটি দিয়ে চেষ্টা করেছি তবে আমি আমার সমস্যার সমাধান করতে পারছি না আপনি আমাকে সাহায্য করতে পারেন?
VjyV

"এবং আপনার প্রোগ্রামটি আবার চালাবেন না" over আমার ক্ষেত্রে আমার প্রক্রিয়াটি পুনরায় চালু করতে হয়েছিল process manager। এটি নিজেই পুনরায় আরম্ভ হয়নি।
তাদেজ

42

আপনি আপনার টার্মিনালে প্রকাশ করার পরে, তারপর করুন

 npm install

সমস্ত নির্ভরতা ইনস্টল করতে।

তারপরে আপনি সার্ভারটি চালানোর জন্য নোড অ্যাপটি করতে পারেন।


7
আপনার উল্লেখ করা উচিত যে এটির জন্য একটি প্যাকেজ তালিকার ফাইলের প্রয়োজন .জসন .. এবং এটি সবসময় হয় না।
পোগ্রিন্ডিস

@VjyV একই ডিরেক্টরিতে আপনার নিজের .js নোড ফাইল রয়েছে। ডিরেক্টরিতে এটি অবশ্যই প্যাকেজ.জসন ফাইল থাকা উচিত যাতে এটি প্রয়োজনীয়তা নির্ভরতা ইনস্টল করতে পারে।
সৌরভ রানা

34

আপনি expressমডিউল ইনস্টল করেছেন কিনা তা পরীক্ষা করে দেখুন । যদি তা না হয় তবে এই কমান্ডটি ব্যবহার করুন:

npm install express

এবং যদি আপনার node_modulesডিরেক্টরিটি অন্য কোনও স্থানে থাকে তবে NODE_PATHপরিবেশের পরিবর্তনশীল সেট করুন :

set NODE_PATH=your\directory\to\node_modules;%NODE_PATH%

12
এইCTRL+C / CTRL+V npm install উত্তরগুলি পোস্ট করা প্রত্যেকের কাছে এটিই সঠিক উত্তর: আপনি কি সত্যই মনে করেন যে কেউ প্রথমে ইনস্টল করা আছে কিনা তা পরীক্ষা না করেই কোনও কিছু চালানোর চেষ্টা করবে? সিরিয়াসলি ...
ক্লোদিও হল্যান্ড

3
শুধু একটি ছোটখাট বিস্তারিত যোগ: আপনি আপনার অ্যাপ্লিকেশনের ডিরেক্টরির মধ্যে দ্রুতগামী কমান্ড ইনস্টল এবং চালানোর জন্য প্রয়োজন না আপনার Node.js ইনস্টলেশন ফোল্ডার বা AppData মধ্যে npm-ফোল্ডারে। কারণ এটিই আমি ভুল করেছিলাম, কারণ আমি ভেবেছিলাম এটি কোনও ধরণের এসডিকে-অ্যাড-অন।
অ্যালেক্স

28

 এনপিএম ইনস্টল - সেভ এক্সপ্রেস   
এটি আমার জন্য কাজ করেছে, আবার এক্সপ্রেস.জেএস ইনস্টল করুন


11

আপনার অ্যাপ ডিরেক্টরিতে এনপিএম ইনস্টল করা সমস্যার সমাধান করবে কারণ এটি প্রয়োজনীয় সমস্ত কিছু ইনস্টল করবে


5

একটি পুরানো থ্রেড এখানে খনন করে তবে আমার একই ত্রুটি হয়েছিল এবং আমার নোড অ্যাপ্লিকেশনটি যে ডিরেক্টরিটিতে থাকে এবং চালিত হয় সে ডিরেক্টরিতে নেভিগেট করে সমাধান করেছি npm install -d


কেন বা কীভাবে তা গুরুত্বপূর্ণ তা নিশ্চিত নয় তবে এটি এটি আপনার নির্ভরশীলতাগুলিতে ইনস্টল করে: docs.npmjs.com/cli/install
গাই লো 3

1
@ গুয়লাউ -dএনপিএম-এর জন্য ডিবাগ হয়, -Dএটি নির্ভরতা।
জন পাভেক

4

আপনি যদি নোড_প্যাথটি সেট না করেন তবে অ্যাপ্লিকেশন ডিরেক্টরিতে এক্সপ্রেস ইনস্টল করা ছাড়া অন্য বিকল্পটি হ'ল npm install express --save। এক্সপ্রেস ইতিমধ্যে ইনস্টল করা হতে পারে তবে nodeকোনও কারণে এটি খুঁজে পেতে পারে না


এইটি আমার পক্ষে কাজ করেছে, আপনার .js ফাইলগুলির মতো একই ডিরেক্টরিতে ইনস্টল কমান্ডটি আরও কার্যকর করুন। এছাড়াও আরও সমস্যা এড়াতে আপনি প্যাকেজ.জসন ফাইল তৈরি করতে "npm init" কমান্ড চালাতে পারেন।
ইমারশাহ

3

আপনার প্রকল্পের চেয়ে আলাদা ডিরেক্টরিতে আপনার এক্সপ্রেস মডিউল রয়েছে। আপনি সম্ভবত require()স্থানীয়ভাবে চেষ্টা করার পরে এটি সম্ভবত সমস্যা । থেকে আপনার দ্রুতগামী মডিউল চলন্ত চেষ্টা করুন / ব্যবহারকারীরা / feelexit / nvm / node_modules / প্রকাশ করার জন্য / ব্যবহারকারীরা / feelexit / WebstormProjects / learnnode / node_modules / প্রকাশ করারএই তথ্যটি আপনাকে নোড_মডিউল ফাইল কাঠামো সম্পর্কে আরও বিশদ দিতে পারে।


2

যদি আপনি মূল ফাইলটি অবস্থিত থাকেন /Users/feelexit/WebstormProjects/learnnode/node_modules/index.jsতবে এক্সপ্রেসটি /Users/feelexit/WebstormProjects/learnnode/node_modules/node_modulesনোড হিসাবে উপস্থিত হওয়া প্রয়োজন যখন সর্বদা ./node_modules(এবং এর অভ্যন্তরীণ ফোল্ডার) মডিউলগুলি সন্ধান করে যখন পাথ শুরু হয় না ./বা /( আরও তথ্য এখানে )

আমি মনে করি আপনি মডিউল ফোল্ডারে মূল ফাইলটি মিস করেছেন


2

এই দৃশ্যের জন্য এনপিএম ইনস্টল এক্সপ্রেস কমান্ডটি চালান যেখানে আপনি প্রোগ্রামটি চালাতে চান সেই সম্পর্কিত ফোল্ডারের জন্য আপনার সিএমডি প্রম্পট ব্যবহার করুন। উদাহরণ আমি এক্সপ্রেস মডিউল প্রোগ্রাম সার্ভার.js চালাতে চাই \ নোডসেম্পল। সুতরাং সেই নির্দিষ্ট ফোল্ডারে "এনপিএম ইনস্টল এক্সপ্রেস" চালান তারপরে সার্ভার.জেএস চালান


1

npm install express body-parser cookie-parser multer --saveএই সমস্যাটি সমাধান করতে আপনার উত্স কোড নোডেজ ফাইল সহ একই ডিরেক্টরিতে কমান্ড চালান । পি / এস: আরও বুঝতে রান কমান্ডের পরে আপনার ডিরেক্টরিটি পরীক্ষা করুন!


1

বিরল ক্ষেত্রে, এনএমপি ক্যাশে দুর্নীতিগ্রস্থ হতে পারে। আমার জন্য, যা কাজ করেছিল তা ছিল:

npm cache clean --force

সাধারণত, প্যাকেজ ম্যানেজার নিজেরাই দুর্নীতি সনাক্ত করে এবং পুনরায় পুনঃস্থাপন করবে যাতে এটি সাধারণত প্রয়োজন হয় না। যাইহোক, আমার ক্ষেত্রে উইন্ডোজ 10 কয়েকবার ক্র্যাশ হয়েছিল এবং আমি সন্দেহ করি এটি আনতে গিয়ে অপারেশন চলাকালীন হয়েছিল। আশা করি এটি কাউকে সাহায্য করবে!

আরও তথ্য: https://docs.npmjs.com/cli/cache


1

আমি একই ধরণের সমস্যার মুখোমুখি হয়েছি এবং শেষ পর্যন্ত এটি আমার পুরানো নির্ভরতার বিষয় যা আমার হেরোকু সার্ভারকে গোলমাল করছে।

আমার প্রকল্পের ফোল্ডারে থাকাকালীন আমি চালিয়েছি:

npm uninstall
npm install

আমি আসা করি এটা সাহায্য করবে


0

npm ERR! Error: ENOENT, open '/Users/feelexit/package.json'

এনপিএম কাজ করার সময় অনুমতিগুলি বা লিঙ্কযুক্ত ফাইলগুলি হারিয়ে যাওয়ার কারণে এটি ঘটে।

অর্থ, যে কার্যকর npm এই ব্যবহারকারীরূপে কোনও ক্ষেত্রে ফাইল থেকে / পড়ার যথেষ্ট অধিকার নেই, এই ক্ষেত্রে প্যাকেজ.জেসন।

sudoপুরো কমান্ডের আগে যোগ করার চেষ্টা করুন - এটি সমাধান করা উচিত।

$ sudo npm install -g express
$ Password:*******

পাসওয়ার্ডটি আপনার ম্যাকের অ্যাডমিনের পাসওয়ার্ড হবে।

-g পতাকা নোডের বৈশ্বিক প্রসঙ্গে এই মডিউলটি (এক্সপ্রেস) ইনস্টল করবে - যার অর্থ নোড হবে / স্বীকৃতি দেবে express ব্যবহারের ক্ষেত্রে মডিউলটির পুরো পথ সরবরাহ না করে কোনও জেএস ফাইলের মধ্য থেকে মডিউলটি

আশাকরি এটা সাহায্য করবে!!


0

আমারও একই সমস্যা ছিল। আমার সমস্যাটি হ'ল এক্সপ্রেস ইনস্টল করার আগে আমাকে কমান্ড লাইনে নোড.জেএস প্রকল্প ডিরেক্টরিতে পরিবর্তন করতে হবে।

cd /Users/feelexit/WebstormProjects/learnnode/node_modules/

0

আমি অনুমান করছি যে এটি কোল্ট স্টিলের ওয়েব ডেভলপমেন্ট কোর্সের পাঠ্যক্রম ... আমি কেন একই ভুলটি শেষ করেছিলাম সেই একই উত্তরটির সন্ধান করছিলাম .. কোল্ট তাই বলে না তবে আপনি নোড_মডিউল ফোল্ডারটি নিয়ে যান এবং সরান আপনি যে নতুন ফোল্ডারে কাজ করছেন তার মধ্যে ... এটি আমার জন্য কাজ করেছে।


0
D:\learn\Node.js\node app.js
module.js:549
    throw err;
    ^

Error: Cannot find module 'body-parser'
    at Function.Module._resolveFilename (module.js:547:15)
    at Function.Module._load (module.js:474:25)
    at Module.require (module.js:596:17)
    at require (internal/module.js:11:18)

কখনও কখনও সংস্করণটি প্যাকেজ.জসনের সাথে মেলে না, প্যাকেজটি পরীক্ষা করে সমস্যার সমাধান হয়েছে j


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.