এনপিএম ব্যবহার না করে কীভাবে একটি নোড.জেএস মডিউল ইনস্টল করবেন?


115

বেশ কয়েকটি মডিউল রয়েছে যা নোডের গিথুব পৃষ্ঠায় তালিকাভুক্ত তবে এনপিএম-রেজিস্ট্রি সহ প্রকাশিত হয় না। এই মডিউলগুলি এনপিএম ব্যবহার করে ইনস্টল করা যাবে না।

এই নোডেজ মডিউলগুলি গিট থেকে ক্লোন করার পরে ইনস্টল করার সঠিক উপায় কী?

উত্তর:


73

আপনি গিথুব থেকে তাদের উত্স ডাউনলোড করতে হবে। মূল ফাইলটি সন্ধান করুন এবং তারপরে এটি আপনার মূল ফাইলে অন্তর্ভুক্ত করুন।

এর উদাহরণ এখানে পাওয়া যাবে> নোড.জেএস মডিউলটি ম্যানুয়ালি কীভাবে ইনস্টল করবেন?

সাধারণত আপনাকে উত্সটি খুঁজে প্যাকেজ.জসন ফাইলটি দিয়ে যেতে হবে। মূল ফাইলটি কোনটি আপনি সেখানে আবিষ্কার করতে পারেন। যাতে আপনি এটি আপনার আবেদনে অন্তর্ভুক্ত করতে পারেন।

আপনার অ্যাপ্লিকেশনটিতে উদাহরণ.js অন্তর্ভুক্ত করতে। এটিকে আপনার অ্যাপ্লিকেশন ফোল্ডারে অনুলিপি করুন এবং এটি আপনার প্রধান জেএস ফাইলের শীর্ষে যুক্ত করুন।

var moduleName = require("path/to/example.js")


1
কোনও বাহ্যিক URL (যেমন var myscript = require("http://www.mywebsite.com/myscript.js")) থেকে কোনও স্ক্রিপ্ট আমদানি করা সম্ভব ? দেখে মনে হচ্ছে requireফাংশনটি বাহ্যিক URL গুলির জন্য কাজ করে না।
অ্যান্ডারসন সবুজ

2
প্রয়োজনীয়তা আসলে সিঙ্ক্রোনাস, তাই না, এটি বাহ্যিক URL গুলির জন্য কাজ করে না।
ক্রিস টাভারেস

দ্রষ্টব্য: আপনাকে -masterগিথুব লাইব্রেরিতে সংযুক্ত করা মুছে ফেলতে হবে ; পরিবর্তন হিসেবে xxx-masterথেকে xxx
বার

65

এই মডিউলগুলি এনপিএম ব্যবহার করে ইনস্টল করা যাবে না।

আসলে আপনি কোনও স্থানীয় পাথ নামের পরিবর্তে নির্দিষ্ট করে একটি মডিউল ইনস্টল করতে পারেন। যতক্ষণ না रिपোসেটরিতে একটি বৈধ package.jsonফাইল থাকে তা কাজ করা উচিত।


টাইপ করুন npm -lএবং একটি সুন্দর সহায়তা এর মতো প্রদর্শিত হবে:

CLI:

...
install     npm install <tarball file>
                npm install <tarball url>
                npm install <folder>
                npm install <pkg>
                npm install <pkg>@<tag>
                npm install <pkg>@<version>
                npm install <pkg>@<version range>

                Can specify one or more: npm install ./foo.tgz bar@stable /some/folder
                If no argument is supplied and ./npm-shrinkwrap.json is 
                present, installs dependencies specified in the shrinkwrap.
                Otherwise, installs dependencies from ./package.json.

আমার চোখে যা ধরা পড়েছিল তা হ'ল: npm install <folder>

আমার ক্ষেত্রে mrtমডিউল নিয়ে আমার সমস্যা হয়েছিল তাই আমি এটি করেছিলাম (একটি অস্থায়ী ডিরেক্টরিতে)

  • রেপো ক্লোন করুন

     git clone https://github.com/oortcloud/meteorite.git
  • এবং আমি এটি দিয়ে বিশ্বব্যাপী এটি ইনস্টল করেছি:

     npm install -g ./meteorite

টিপ:

স্থানীয় এনপিএম প্রকল্পে রেপো একই পদ্ধতিতে ইনস্টল করতে পারে:

     npm install ../meteorite

এবং বিকাশে কোনও প্যাচ প্রয়োজন হলে, কেউ রেপোতে একটি লিঙ্ক তৈরি করতে পারে:

     npm link ../meteorite

1
দুর্দান্ত. আমিও একটি মডিউল নিয়ে সমস্যা হচ্ছিলাম, তাই আমি এটিকে আমার ওয়েব প্রকল্পের একটি ভাইবাল ডিরেক্টরিতে লিখেছিলাম এবং ক্লোন করেছিলাম, এটির সমস্ত নির্ভরতা সর্বশেষতম সংস্করণগুলির সাথে আপডেট করেছি এবং তারপরে এটি 'এনপিএম ইনস্টল দিয়ে আমার ওয়েব প্রকল্পে ইনস্টল করেছি .. / ভাঙ্গা_আরক্ষক_নাম যা কবজির মতো কাজ করেছে। ধন্যবাদ!
পেরি টিউ

+1 তবে এনপিএমের জন্য আমাদের যদি নেটওয়ার্ক অ্যাক্সেস না থাকে এবং আমরা যে মডিউলটি ইনস্টল করছি তার সাথে npm install <folder>অন্যান্য এনপিএম নির্ভরতা রয়েছে যদি এটি কাজ করে না ।
আব্দুল রউফ

যদি এনপিএম গ্লোবাল (এখানে নিশ্চিত নয়) স্কোপ বা স্থানীয় একটি থেকে নোড_মডিউলগুলিতে প্যাকেজটি খুঁজে পায়, তবে এটি আবার ডাউনলোড করার চেষ্টা করবে না। এর অর্থ যদি কোনও রেপোর সমস্ত সরাসরি নির্ভরতা নোড_মডিউল ফোল্ডারে প্রাক-ডাউনলোড এবং অনুলিপি করা যায় তবে এটি কার্যকর হবে।
টিবেরিউ সি

11

গিথুব থেকে কোডটি নোড_মডিউল ডিরেক্টরিতে ডাউনলোড করুন

var moduleName = require("<name of directory>")

যা করা উচিৎ.

যদি মডিউলের নির্ভরতা থাকে এবং একটি প্যাকেজ জেসন থাকে তবে মডিউলটি খুলুন এবং এনপিএম ইনস্টল দিন।

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


আমি মনে করি এই কোডটি যদি মূল ফাইলটির নাম দেওয়া হয়index.js
R3tep

8

আপনি সরাসরি আপনার স্থানীয় প্রকল্পে মডিউলটি ক্লোন করতে পারেন।

টার্মিনাল শুরু করুন। আপনার প্রকল্পে সিডি করুন এবং তারপরে:

এনপিএম https://github.com/repo/npm_module.git --save ইনস্টল করুন


1
উত্তর আমি খুঁজছিলাম।
ফয়সাল এমকিউ

প্যাকেজটি পরিবর্তিত হয়ে গেলে কী ঘটে যায়, আপনি কীভাবে সর্বশেষ সংস্করণে আপডেট করবেন? এটিএম, শুধুমাত্র "সমাধান" আমি পেয়েছি node_modules থেকে fodler মুছতে package.json এন্ট্রি এবং পুনরায় অ্যাড, যা একটি ব্যথা ... মুছে দিতে ছিল
Predrag Stojadinović

1

ধাপে ধাপে:

  • আসুন বলতে আপনি একটি প্রকল্পের কাজ করছি use-gulpযা ব্যবহার ( requireগুলি) node_modulesমত gulpএবং gulp-util
  • এখন আপনি gulp-utilআপনার use-gulpপ্রকল্পের সাহায্যে এটি স্থানীয়ভাবে পরীক্ষা এবং পরীক্ষা করার জন্য কিছু পরিবর্তন করতে চান ...
  • gulp-utilগিথুব \ বিটবাকেট ইত্যাদিতে কাঁটাচামচ প্রকল্প
  • আপনার প্রকল্পে স্যুইচ করুন: cd use-gulp/node_modules
  • gulp-utilহিসাবে ক্লোন করুন gulp-util-dev:git clone https://.../gulp-util.git gulp-util-dev
  • npm installনির্ভরতা gulp-util-devউপলব্ধ রয়েছে তা নিশ্চিত করতে চালান ।
  • এখন আপনি gulp-utilহিসাবে একটি আয়না আছে gulp-util-dev। আপনার use-gulpপ্রকল্পে, আপনি এখন প্রতিস্থাপন করতে পারেন: সাথে require('gulp-util')...;কল করুন: require('gulp-util-dev')আপনার করা পরিবর্তনগুলি পরীক্ষা করতেgulp-util-dev
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.