আমি কীভাবে স্থানীয়ভাবে একটি নুগেট প্যাকেজ .nupkg ফাইল ইনস্টল করব?


উত্তর:


463

মেনু সরঞ্জামসমূহবিকল্পসমূহপ্যাকেজ পরিচালক

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

একটি নাম এবং ফোল্ডারের অবস্থান দিন। ঠিক আছে ক্লিক করুন। সেই ফোল্ডারে আপনার নুগেট প্যাকেজ ফাইলগুলি ফেলে দিন।

আপনার প্রকল্পে যান, ডান ক্লিক করুন এবং "নিউগেট প্যাকেজগুলি পরিচালনা করুন " নির্বাচন করুন এবং আপনার নতুন প্যাকেজ উত্সটি নির্বাচন করুন।

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

এখানে ডকুমেন্টেশন দেওয়া আছে


22
আসলে, আমি কয়েক বার 1 বার করেছি। ইনস্টলড প্যাকেজগুলি, আপডেটগুলি বা সাম্প্রতিক প্যাকেজগুলি দেখার জন্য আমি যখন খুলি তখন আমার প্যাকেজটি দ্বিতীয় ধাপে প্রদর্শিত হচ্ছে না।
টম

2
আমার স্ক্রিনে, আমার কাছে কেবল "ইনস্টল করা প্যাকেজগুলি" এর অধীনে "সমস্ত" রয়েছে "নিউগেট অফিক্যাল প্যাকেজ উত্স" নয়, আমার কাস্টম "নিউনিজেট" নয়, তারা অনুপস্থিত।
টম

1
আমি vs2010 ব্যবহার করছি। এখনই তাদের হোমপেজ থেকে সর্বশেষ নুগেটটি ডাউনলোড এবং ইনস্টল করার চেষ্টা করছে। পরবর্তী ক্লিক করুন ডাউনলোড করুন ... তারপরে ত্রুটি ... এম expected আশানুরূপ হিসাবে, জ্ঞাত সমস্যাগুলির একটি লিঙ্ক রয়েছে, এটি যাচাই করে বলেছে, স্বাক্ষরের মিল নেই তবে আমার বিদ্যমান নুগেটটি আনইনস্টল করা দরকার এবং এটি সহজ সমাধান। ঠিক আছে, এটা। আমি যখন কম্পিউটার পুনরায় চালু করি এবং আবার ইনস্টল করি, একই ত্রুটি ফিরে আসবে, স্বাক্ষর মিলবে না ... তাই এখন আমি পুরানো সংস্করণটি আটকে গিয়েছি, নতুন সংস্করণ ইনস্টল করতে চায় না।
টম

2
সমস্যা স্থির। আমি উইন্ডোজ -> কন্ট্রোল প্যানেল থেকে nuget আনইনস্টল। এটি সেভাবে কাজ করেনি। আমার ভিএস শুরু করতে হবে এবং সরঞ্জাম-> এক্সটেনশন ম্যানেজারে যেতে হবে ... তারপরে সেখান থেকে আনইনস্টল নুগেটটি চাপুন। পুনরায় চালু করা ভি.এস. তারপরে আবার নুগেট ইনস্টল করতে গেল, এটি কাজ করেছিল। এখন, স্থানীয় নুপকিজ ফাইলগুলিও প্রদর্শিত হচ্ছে (সম্পাদনা করুন: তারা অনলাইন ট্যাবে রয়েছে, ইনস্টল করা ট্যাব নয়, আমার পোস্ট করা ছবিতে আমার ভুল)। সহায়তার জন্য ধন্যবাদ :)
টম

1
আমার এখনও মন্তব্য করার মতো যথেষ্ট খ্যাতি নেই - তবে এখনও ভিএস2015 সম্পর্কে স্বীকৃত উত্তর মন্তব্যে মাইকেলকে উত্তর দেওয়ার জন্য অনলাইনে যেতে চাইছেন। আমার একই সমস্যা ছিল, তবে বিকল্পগুলিতে আপনি যদি সমস্ত অনলাইন উত্স অনিক চিহ্নিত করেন তবে এটি অফলাইনের জন্য কাজ করে। নিউজেট অপশনস পিক
মিক এম

302

আপনি প্যাকেজ ম্যানেজার কনসোল ব্যবহার করতে পারেন এবং প্যারামিটারে Install-Packageপ্যাকেজ ফাইল রয়েছে এমন ডিরেক্টরিটির পথ নির্দিষ্ট করে সেমিডলেটটি আহ্বান করতে পারেন -Source:

Install-Package SomePackage -Source C:\PathToThePackageDir\

2
কমান্ড লাইন টুল দিয়েও আমি কি এরকম কিছু করতে পারি?
পুল কে। সেরেনসেন

5
হ্যাঁ. -Sourceবিকল্প পাওয়া যায় nuget.exe হিসাবে ভাল। উদাহরণস্বরূপ:nuget install SomePackage -Source C:\PathToThePackageDir
এনরিকো ক্যাম্পিডোগ্লিও

16
আপনারও অন্তর্ভুক্তপ্রিরিলেজ পতাকাটি নির্দিষ্ট করার প্রয়োজন হতে পারে। অন্যথায়, যদি প্যাকেজ সংস্করণটিতে ড্যাশ-প্রত্যয় থাকে (যেমন "-বেতা 1"), ইনস্টল-প্যাকেজটি এটি খুঁজে পাবে না।
জেফ শার্প

9
এটি গৃহীত উত্তরটির চেয়ে অনেক বেশি সরাসরি উত্তর। তথ্যের জন্য ধন্যবাদ!
ডেভিড পিটারস 19

2
ভিএস 2017 এর জন্য কাজ করে না, দেখুন f.ex. @ গ্রেঞ্জারের উত্তর
রেনিপেট

124

.Nupkg ফাইলগুলির জন্য আমি ব্যবহার করতে চাই:

Install-Package C:\Path\To\Some\File.nupkg

7
শুধুমাত্র কাজ করে। যদি ডিরেক্টরিটিতে যাওয়ার পথটিতে ফাঁকা স্থান থাকে, তবে এটি ডাবল উদ্ধৃতিতে অন্তর্ভুক্ত করুন।
নিকোস

4
একমত। এবং উল্লেখযোগ্য যে শুধুমাত্র পরম পাথ কাজ করে
সেবাস্তিয়ান জে।

5
ভিএস 2017 এর জন্য কাজ করে না, দেখুন f.ex. @ গ্রেঞ্জারের উত্তর
রেনিপেট

1
@ রেনিপেট যা ভিএস ২০১7-এ আমার জন্য কাজ করেছিল (তবে আমি ইতিমধ্যে আমার .nupkgঅন্যান্য ডিরেক্টরিতে সমস্ত প্যাকেজ সংরক্ষণ করেছিলাম সেই একই ডিরেক্টরিতে
রেখেছি

1
এটি আমার পক্ষে কাজ করছে না, আমি VS2013 সংস্করণ 12.0.21..5 এবং নুগেট প্যাকেজ ম্যানেজারটি 2.12.0.817 :(
নিরাজ ত্রিবেদী

56

ভিজ্যুয়াল স্টুডিও 2017 এবং এর নতুন .csproj বিন্যাসের জন্য

আপনি আর কোনও স্থানীয় ফাইলের দিকে নির্দেশ করতে কেবল ইনস্টল-প্যাকেজটি ব্যবহার করতে পারবেন না। (এটি সম্ভবত কারণ কারণ PackageReferenceউপাদান ফাইলের পথগুলিকে সমর্থন করে না; এটি আপনাকে কেবল প্যাকেজের আইডি নির্দিষ্ট করতে দেয়))

আপনাকে প্রথমে আপনার প্যাকেজের অবস্থান সম্পর্কে ভিজ্যুয়াল স্টুডিওতে বলতে হবে এবং তারপরে আপনি এটি কোনও প্রকল্পে যুক্ত করতে পারেন। বেশিরভাগ লোকেরা যা করেন তা হ'ল নুগেট প্যাকেজ ম্যানেজারে যান এবং স্থানীয় ফোল্ডারটিকে উত্স হিসাবে যুক্ত করুন (মেনু সরঞ্জামসমূহবিকল্পসমূহ নুগেট প্যাকেজ ম্যানেজারপ্যাকেজ উত্স )। তবে এর অর্থ আপনার নির্ভরতার অবস্থানটি আপনার বাকী কোডবেসের সাথে (সংস্করণ-নিয়ন্ত্রণে) প্রতিশ্রুতিবদ্ধ নয়।

স্থানীয় অনুগেট প্যাকেজগুলি আপেক্ষিক পথ ব্যবহার করে

এটি এমন একটি প্যাকেজ উত্স যুক্ত করবে যা কেবলমাত্র একটি নির্দিষ্ট সমাধানের জন্য প্রযোজ্য এবং আপনি আপেক্ষিক পাথ ব্যবহার করতে পারেন।

আপনার একটি তৈরি করা দরকার nuget.configআপনার .slnফাইলের মতো একই ডিরেক্টরিতে ফাইল করতে হবে। আপনি চান প্যাকেজ উত্স (গুলি) দিয়ে ফাইলটি কনফিগার করুন। আপনি যখন ভিজ্যুয়াল স্টুডিও 2017 এ সমাধানটি খুলবেন, সেই উত্স ফোল্ডারগুলির থেকে কোনও .nupkg ফাইল উপলব্ধ থাকবে। (আপনি প্যাকেজ ম্যানেজারে তালিকাভুক্ত উত্স (গুলি) দেখতে পাবেন এবং আপনি যখন কোনও প্রকল্পের জন্য প্যাকেজ পরিচালনা করছেন তখন আপনি "ব্রাউজ করুন" ট্যাবে প্যাকেজগুলি দেখতে পাবেন))

nuget.configআপনাকে শুরু করার জন্য এখানে একটি উদাহরণ রয়েছে :

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <packageSources>
        <add key="MyLocalSharedSource" value="..\..\..\some\folder" />
    </packageSources>
</configuration>

গল্পের

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


আমি ভিএস 2017 ব্যবহার করছি এবং এই সমস্যায় পড়িনি। আমি শুধু পাস -Sourceকরার জন্য যুক্তি Update-Packageএবং এটি জরিমানা করেন। Install-Packageকমান্ড দিয়ে বিশেষ কিছু করতে পারে ?
গ্রেগ বার্গার্ট

48
  1. আপনার সমাধানের পাশের লোকালপ্যাকেজ নামে একটি ফোল্ডারে ফাইলগুলি যুক্ত করুন (এটির জন্য এটি বলা প্রয়োজন হবে না, তবে নীচের পদক্ষেপে xML সামঞ্জস্য করুন)
  2. নিম্নলিখিত বিষয়বস্তু সহ আপনার সমাধান ফাইলের পাশে নিউগেট.কনফিগ নামে একটি ফাইল তৈরি করুন

    <?xml version="1.0" encoding="utf-8"?>
      <configuration>
        <packageSources>
          <add key="LocalPackages" value="./LocalPackages" />
        </packageSources>
        <activePackageSource>
          <!-- this tells that all of them are active -->
          <add key="All" value="(Aggregate source)" />
        </activePackageSource>
     </configuration>
  3. সমাধানটি যদি ভিজ্যুয়াল স্টুডিওতে খোলা থাকে তবে এটি বন্ধ করুন, তারপরে এটি আবার খুলুন।

এখন আপনার প্যাকেজগুলি ব্রাউজারে উপস্থিত হওয়া উচিত, বা ইনস্টল-প্যাকেজ ব্যবহার করে ইনস্টলযোগ্য হবে


চমত্কার উত্তর, ঠিক আমি যে সমাধানটি সন্ধান করছিলাম। ধন্যবাদ!
জোনাথন

1
এটি কেবলমাত্র এমন হতে পারে যে আমার কাছে নুগেট সংগ্রহস্থলের মতো একই নামের প্যাকেজ রয়েছে তবে প্যাকেজ ম্যানেজার কনসোলটি ব্যবহার করা এবং ইনস্টল-প্যাকেজ চালানোর আগে প্যাকেজ উত্সকে লোকালপ্যাকেজ হিসাবে নির্বাচন করা দরকার।
লুক

42

যদি আপনার কাছে .nupkg ফাইল থাকে এবং কেবলমাত্র .dll ফাইলের দরকার হয় তবে আপনাকে এক্সটেনশনটি .zip এ পরিবর্তন করতে হবে এবং lib ডিরেক্টরিটি সন্ধান করতে হবে।


3
আপনি যদি এটি জিপ ফাইল হিসাবে বিবেচনা করেন তবে ফাইলের নামের সাথে থাকা ফাইলগুলি% (স্পেসগুলি প্রতিস্থাপন করে) দিয়ে বের করা হবে। নুগেট ব্যবহার করে এই ইনস্টলটি এড়াতে।
রাহাতুর

2
আসলে, আপনার এমনকি এক্সটেনশনটির নতুন নামকরণের প্রয়োজন নেই। কেবলমাত্র ফাইলটি ডান-ক্লিক করুন, এবং তারপরে ওপেনটি চয়ন করুন এবং একটি অ্যাপ্লিকেশন সন্ধান করুন যা .zip ফাইলটি খুলতে পারে এবং .nupkg ফাইলটি খুলতে পারে এবং তারপরে আপনি প্রয়োজনীয় ডিএল ফাইলটি আপনার মনোনীত ফোল্ডারে বের করতে পারেন।
jyao

1
আমার সেরা সমাধানটি দরকার
লিও এনগুইন

8

কেবল একটি আপডেট দিতে, ভিজ্যুয়াল স্টুডিও 2015 ব্যবহারকারীদের জন্য সামান্য পরিবর্তন রয়েছে।

প্যাকেজটি ম্যানুয়ালি ব্যবহার বা ইনস্টল করতে, সরঞ্জাম -> বিকল্পগুলি -> নিউগেট প্যাকেজ ম্যানেজার -> এ যান প্যাকেজ উত্স

অ্যাড বোতামটি ক্লিক করুন, উত্সটি চয়ন করুন এবং " আপডেট " ক্লিক করতে ভুলবেন না কারণ এটি আপনার প্যাকেজগুলির জন্য ফোল্ডারের অবস্থান আপডেট করবে, আপনি চাইলে আপনার প্যাকেজ উত্সটির পছন্দসই নামটি সম্পাদনা করুন:

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

আপনার যুক্ত প্যাকেজটি চয়ন করতে, আপনার সমাধানটিতে ডান ক্লিক করুন এবং " নিউজ প্যাকেজগুলি পরিচালনা করুন" নির্বাচন করুন "

ড্রপ ডাউন তালিকাটি ডানদিকে রয়েছে এবং আপনার ফোল্ডারের উত্সে আপনি যে প্যাকেজগুলি নির্দিষ্ট করেছেন সেগুলি ব্রাউজ করতে ব্রাউজ করুন। যদি সেই ফোল্ডারের উত্সটিতে কোনও ন্যুগেট প্যাকেজ না থাকে তবে এটি খালি থাকবে:

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


6

লিনাক্সে, নিউগেট সি এল এলির সাথে, কমান্ডগুলি একই রকম। My.nupkg ইনস্টল করতে, চালান

nuget add -Source some/directory my.nupkg

তারপরে dotnet restoreসেই ডিরেক্টরি থেকে চালান

dotnet restore --source some/directory Project.sln

বা ডিরেক্টরিটি একটি নিউগেট উত্স হিসাবে যুক্ত করুন

nuget sources Add -Name MySource -Source some/directory

এবং তারপরে বা msbuildসেই সাথে ডিরেক্টরিটি ব্যবহার করতে বলুন । দ্বিতীয় স্যুইচ অন্য সমস্ত উত্সকে অক্ষম করবে, উদাহরণস্বরূপ, অফলাইন পরিস্থিতিগুলির জন্য এটি ভাল।/p:RestoreAdditionalSources=MySource/p:RestoreSources=MySource


1
ম্যাক (আমি লিনাক্সও ধরে নিচ্ছি), আপনি nuget sourcesযদি এই বাগের কারণে dotnet restore(বা ভিএস ম্যাক ) ব্যবহার করছেন তবে আপনি নির্ভর করতে পারবেন না । আমাকে স্থানীয় উত্সটি ম্যানুয়ালি যোগ করতে হয়েছিল (এই জিএইচ সমস্যাটি দেখুন )। ~/.nuget/NuGet/NuGet.Config
গ্যাবে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.