এনপিএম ওয়ার্ন প্যাকেজ.জসন: কোনও সংগ্রহস্থল ক্ষেত্র নেই


808

আমি নিম্নলিখিত কমান্ড দিয়ে এক্সপ্রেস.জেএস ইনস্টল করেছি:

sudo npm install -g express

আমি নিম্নলিখিত সতর্কতা পেতে:

npm WARN package.json range-parser@0.0.4 No repository field.
npm WARN package.json fresh@0.1.0 No repository field.
npm WARN package.json methods@0.0.1 No repository field.
npm WARN package.json methods@0.0.1 No readme data.
npm WARN package.json cookie-signature@1.0.1 No repository field.
npm WARN package.json send@0.1.0 No repository field.
npm WARN package.json pause@0.0.1 No repository field.
npm WARN package.json bytes@0.2.0 No repository field.
npm WARN package.json github-url-from-git@1.1.1 No repository field.
npm WARN package.json assert-plus@0.1.2 No repository field.
npm WARN package.json ctype@0.5.2 No repository field.

আমি নোড.জেএস এবং এক্সপ্রেস.জেএস-এ নতুন। আমার উপরোক্ত সতর্কতা কেন? আমার কি দুশ্চিন্তা করা উচিৎ?


19
এক বছর পরে এই প্রশ্নটি দেখে আমি বুঝতে পারি যে প্রতিবার এনপিএম প্যাকেজ ইনস্টল করার পরে আমি মানসিকভাবে এই সমস্ত সতর্কতাগুলি মুছে ফেলছি। এটি প্যাকেজ বিকাশকারীদের সম্পর্কে কিছুটা সতর্ক হওয়া উচিত be
nha

@ না হ্যাঁ, কিছু এনপিএম অপারেশন করার সময় আমি সাধারণত এই সতর্কতাগুলি দেখতে পাই এবং আমি যে প্যাকেজটি বিকাশ করছি তা যদি ঠিক হয় তবে তা ঠিক করুন।
গুস্তাভোহেঙ্কে

29
প্রাইভেট "private": trueরেপোসের জন্য , কেবল প্যাকেজ.জসনে যুক্ত করুন
chovy

উত্তর:


1279

এটি এনপিএম v1.2.20 হিসাবে কেবল একটি চেক, তারা এটি একটি সতর্কতা হিসাবে রিপোর্ট করে।

যাইহোক, চিন্তা করবেন না, আছে sooooooo অনেক প্যাকেজ যা এখনও নেই repositoryতাদের মাঠে package.json। ক্ষেত্রটি তথ্যমূলক উদ্দেশ্যে ব্যবহৃত হয়।

আপনি যদি প্যাকেজ লেখক repositoryহন তবে আপনার package.jsonএটিকে এভাবে রাখুন:

"repository": {
  "type": "git",
  "url": "git://github.com/username/repository.git"
}

repositoryক্ষেত্রটি সম্পর্কে আরও পড়ুন , এবং আরও তথ্যের জন্য লগড বাগটি দেখুন।


অতিরিক্ত হিসাবে , @dan_nl দ্বারা মূল হিসাবে প্রতিবেদন করা হয়েছে , আপনি নিজের privateকী সেট করতে পারেন package.json
এটি আপনাকে দুর্ঘটনাক্রমে npm publishআপনার অ্যাপে চালানো থেকে বিরত রাখবে না , তবে এনপিএমকে package.jsonসমস্যা সম্পর্কিত সতর্কতাগুলি প্রিন্ট করা থেকে বিরত রাখবে ।

{
  "name": "my-super-amazing-app",
  "version": "1.0.0",
  "private": true
}

20
আমার উত্তর দেওয়ার কয়েক মাস পরেও আমি এখনও পর্যন্ত কোনও সমস্যা মনে করি না :)
গুস্তাভোহেঙ্কে

2
repositoryশূন্য থাকা এবং privateসত্য হিসাবে সেট হয়ে গেলে এনপিএম 2.14 এখন একটি ত্রুটি মুদ্রণ করে ।
ব্লেইস করুন

9
@ ব্লাইজ, এনপিএম ৩.৩.৩ এ ব্যবহার করে আমি কোনও সতর্কতা পাচ্ছি নাprivate: true
গুস্তাভোহেঙ্কে

3
প্রশ্ন, কেন "ব্যক্তিগত" ডিফল্ট নয়, আমার অর্থ কতগুলি এনএমপি প্রকল্পগুলি তৈরি করা হয় বনাম কতগুলি প্রকৃত প্রকাশিত হয়, সেখানে কি ব্যবহারকারীর কোডের চেয়ে বেশি লাইব্রেরি কোড আছে?
Felype

1
ব্যক্তিগত জন্য ধন্যবাদ: সত্য, একরকম, আমি এত বছর ধরে এটিকে মিস করেছি।
জেরেমি চোন

394

আপনি যদি অ্যাপ্লিকেশনটিকে প্রকৃত ভাণ্ডারে রাখার পরিকল্পনা না করেন তবে আপনি ব্যক্তিগতটিকেও চিহ্নিত করতে পারেন।

{
  "name": "my-application",
  "version": "0.0.1",
  "private": true
}

51

যেমনটি ড্যান_এনএল বলেছেন, আপনি প্যাকেজ.জসনে একটি প্রাইভেট জাল ভান্ডার যুক্ত করতে পারেন। এমনকি এর জন্য আপনার নাম এবং সংস্করণও প্রয়োজন নেই:

{
  ...,
  "repository": {
    "private": true
  }
}

আপডেট: এই বৈশিষ্ট্যটি অননুমোদিত এবং সম্ভবত এটি কাজ করবে না। নিম্নলিখিত বিকল্প নির্বাচন করুন।

আরও ভাল: privateসরাসরি পতাকাটি সেট করুন । এইভাবে এনপিএম পুনরায় ফাইলের জন্য জিজ্ঞাসা করে না:

{
  "name": ...,
  "description": ...,
  "version": ...,
  "private": true
}

এই উত্তর সম্পর্কে অন্য ব্যবহারকারী সম্পর্কে অবহিত। দেখে মনে হচ্ছে repository.privateনথিভুক্ত আচরণ নয় (বা এটি আর গৃহীত হবে না), ডক্টস.এনএমজেজেএস / ফাইলস / প্যাকেজ.জেসন অনুসারে ।
গুস্তাভোহেনকে

1
@ গুস্তাভোহেনকে: আপনাকে ধন্যবাদ, মনে হচ্ছে আপনি ঠিকই আছেন - privateযেহেতু শীর্ষ স্তরের সম্পত্তি হ'ল সর্বোত্তম বিকল্প। আমার উত্তর আপডেট।
wortwart

46

আপনি যদি নিজের থেকে এটি পেতে থাকেন তবে এটির package.jsonজন্য repositoryক্ষেত্রটি যুক্ত করুন । (আপনার প্রকৃত ভাণ্ডারের লিঙ্কটি ব্যবহার করুন):

"repository" : { 
   "type" : "git",
   "url" : "https://github.com/npm/npm.git"
 }

পূর্ণ GitHub প্রকল্প ফাইল লিংক (তত্সহ ব্যবহার করতে সে বিষয়ে পরিষ্কারভাবে বর্ণনা করার জন্য ধন্যবাদ http://বা https://!
twknab

9

তুমি কি দৌড়ালে npm init? এই আদেশ আপনাকে সমস্ত কিছুর মধ্য দিয়ে চালায় ...


9

সরল ওয়ার্ডে- প্যাকেজ.জেসনে আপনার প্রকল্পের ভাণ্ডারের সম্পত্তি নেই আপনার এটি যুক্ত করতে হবে,

এবং আপনাকে নীচের মত আপনার প্যাকেজ.জসনে রিপোজিটরি যুক্ত করতে হবে

এখানে চিত্র বর্ণনা লিখুন

এবং আপনার পরিস্থিতি অনুযায়ী আমাকে ব্যাখ্যা করতে দিন

নীচের মতো আপনার অবশ্যই সংগ্রহস্থল ক্ষেত্র যুক্ত করতে হবে

  "repository" : {     
     "type" : "git",
      "url" : "http://github.com/npm/express.git" 
   }

7

সতর্কতাগুলি এড়ানোর জন্য:

npm WARN project.com@1.0.0 No repository field.

আপনার প্রকল্পের প্যাকেজ.জসনে আপনার অবশ্যই সঞ্চয়ী সংজ্ঞা দিতে হবে। ক্ষেত্রে যখন আপনি সংগ্রহস্থলের কোনও প্রকাশনা নিয়ে বিকাশ করছেন "private": trueআপনি প্যাকেজ.জসনে সেট করতে পারেন

উদাহরণ:

{
  "name": "test.loc",
  "version": "1.0.0",
  "private": true,
  ...
  "license": "ISC"
}

এ সম্পর্কিত এনপিএম ডকুমেন্টেশন: https://docs.npmjs.com/files/package.json


6

আপনি যদি কোনও সংগ্রহস্থল নির্দিষ্ট করতে না চান তবে আপনি package.jsonফাইলটিতে নিম্নলিখিত লাইনগুলি যুক্ত করতে পারেন :

"description":"",
"version":"0.0.1",
"private":true,

এটা আমার জন্য কাজ করেছে।
যোগ করে private, আপনার কোনও রেপোতে লিঙ্ক করার দরকার নেই।


4

এটি আপনার সকলকে আপনার নিজস্ব সঠিক বিশদ ব্যবহার সন্ধান করতে সহায়তা করবে

npm ls dist-tag

এটি তখন সঠিক তথ্য প্রদর্শন করবে যাতে আপনি সংস্করণ ফাইলের অবস্থান ইত্যাদি অনুমান করবেন না

উপভোগ করুন :)


1
আমি 18
এমজে

3

হ্যাঁ, সম্ভবত আপনি -fআপনার কমান্ডের শেষে অন্তর্ভুক্ত করে একটি পুনরায় তৈরি করতে পারবেন


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