ไม่สามารถติดตั้งแพ็คเกจใด ๆ ใน Visual Studio 2015


183

ฉันลองทุกแพ็คเกจที่ฉันสามารถหาได้และจะไม่มีการติดตั้งใด ๆ ในโครงการของฉัน ฉันได้ติดตั้งทุกการอัปเดตที่ระบุไว้ในรายการส่วนขยายและอัปเดตที่มีอยู่ เมื่อฉันพยายามติดตั้ง SendGrid เช่นนี้เป็นผลลัพธ์ (ตามผลลัพธ์กับแพ็คเกจอื่นทั้งหมด):

Attempting to gather dependencies information for package 'Sendgrid.6.1.0' with respect to project 'UI\MyApplication.MVC', targeting '.NETFramework,Version=v4.5.2'
Attempting to resolve dependencies for package 'Sendgrid.6.1.0' with DependencyBehavior 'Lowest'
Resolving actions to install package 'Sendgrid.6.1.0'
Resolved actions to install package 'Sendgrid.6.1.0'
For adding package 'SendGrid.SmtpApi.1.3.1' to project 'MyApplication.MVC' that targets 'net452'.
For adding package 'SendGrid.SmtpApi.1.3.1' to project 'MyApplication.MVC' that targets 'net452'.
Adding package 'SendGrid.SmtpApi.1.3.1' to folder 'C:\Users\Keith\Source\Workspaces\MyApplication\MyApplication.MVC\packages'
Install failed. Rolling back...

ฉันไม่สามารถเป็นคนเดียวในโลกที่มีปัญหากับ Visual Studio 2015 และ NuGet Package Manager ตัวใหม่และ "ปรับปรุง"

UPDATE:
ต้องมีอะไรแปลก ๆ ในการแก้ปัญหาของฉันเพราะฉันสร้างโครงการใหม่จากเทมเพลต VS2015 (เว็บ) และแพ็คเกจก็ติดตั้งได้ เมื่อฉันพบปัญหาฉันจะโพสต์ความละเอียดในกรณีที่คนอื่นพบปัญหาเดียวกัน

อัปเดต 2:
โอเคมันไม่ใช่ทางออกของเรา เราสร้างโซลูชันใหม่ตั้งแต่เริ่มต้นอีกครั้ง (เสียเวลามากกับการพัฒนาของฉันที่ฉันอาจเพิ่ม) เพิ่มแพ็กเกจคู่หนึ่ง (Identity, EF, SendGrid) และหลังจากตรวจสอบโซลูชันใน VSO แล้วนักพัฒนาอื่นทำการสร้างใหม่ ของสาขาและการสร้างข้อผิดพลาดเกิดขึ้น เมื่อฉันไปที่แพคเกจ NuGet สำหรับแต่ละโครงการมันทำหน้าที่เหมือนไม่มีแพ็คเกจที่ฉันเพิ่มไว้ ใครบ้างที่ประสบปัญหานี้


1
ใช้ VS2013 เพื่อเพิ่มแพ็คเกจ VS2015 เป็นปัญหาอย่างมากจากนั้นเปิดใน VS2015 และใช้มันต่อไป
Rob Sedgwick

คำตอบ:


124

tl; dr - ลบสิ่งนี้:

%AppData%/Nuget/Nuget.config

คำเตือน: หากคุณมีแหล่งที่มาของ NuGet ที่กำหนดเองสิ่งนี้จะลบออกและคุณจะต้องเพิ่มใหม่อีกครั้ง


รุ่นที่ยาวกว่า:

คุณอาจจะเสียหาย NuGet config ของคุณ ไม่นะ :(

Nuget.config เป็นไฟล์ที่ใช้ในการติดตามสถานที่ทั้งหมดที่ NuGet ดึงมารวมถึงการกำหนดค่าสิ่งอื่น ๆ เป็นไปได้มากกว่าที่ไฟล์ xml นี้จะใช้งานไม่ได้

  • ไปที่เส้นทางนี้: C:\Users\{{username}}\AppData\Roaming\
  • ลบ Nuget.config
  • เริ่มต้น VS ใหม่เพื่อการวัดที่ดี

สำหรับการอ้างอิง: ในวันที่ดีของปี 2560 ไฟล์ของคุณควรมีลักษณะเช่นนี้

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageRestore>
    <add key="enabled" value="True" />
    <add key="automatic" value="True" />
  </packageRestore>
  <activePackageSource>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
  </activePackageSource>
  <packageSources>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
    <add key="nuget.org" value="https://www.nuget.org/api/v2/" />
    <!-- Others -->
  </packageSources>
  <packageSourceCredentials>
    <!-- secret stuff -->
  </packageSourceCredentials>
</configuration>

ขอบคุณนั่นเป็นทางออกที่เรียบร้อย
Nic

มันใช้งานได้สำหรับฉันเช่นกันขอบคุณรูปปั้นที่คุณประหยัดเวลาของฉัน
Rameshwar Vyevhare

1
เรื่องบังเอิญที่น่าทึ่ง โพสต์นี้จากปีที่แล้วได้รับการแก้ไขก่อนที่ตาของฉันถูกต้องเมื่อฉันต้องการคำตอบ ขอบคุณ!
Jason Spake

1
ขออภัยที่จะชนสิ่งนี้ แต่ของฉันจะต้องพิเศษและเรียกว่า "NuGet.Config" ซึ่งเฉพาะเจาะจงมากใน NTFS สำหรับฉัน!
TGP1994

2
(ที่จริงแล้วเปิดออกฉันไม่จำเป็นต้องลบการตั้งค่าเลยจำเป็นต้องเริ่มต้น Visual Studio ใหม่อีกครั้ง)
TGP1994

415

การปิดและเปิด VS2015 ใหม่ช่วยแก้ปัญหานี้ได้

ดูเหมือนว่าในบางกรณีเพียงแค่โหลดโครงการที่ได้รับผลกระทบใหม่จะได้ผล


3
สิ่งนี้ใช้ได้สำหรับฉันเช่นกันหลังจากฉันปิด VS แล้วทำให้โฟลเดอร์ 'แพ็คเกจ' สำหรับการแก้ปัญหาและเริ่มต้นใหม่
wislon

6
สิ่งนี้ใช้ได้ผลสำหรับฉันแม้ว่าฉันจะต้องปิดอินสแตนซ์ทั้งหมดของ VS - การปิดเพียงอันที่ได้รับผลกระทบยังไม่เพียงพอ
Rory McCrossan

4
ดูเหมือนง่ายมาก ... และถึง +111 โหวต! ทำงานให้ฉันด้วย!
Anthony Nichols

22
ทำไม Microsoft?!?! ทำไมต้องเป็นคำตอบที่ดีที่สุด (และเป็นคำตอบที่เหมาะกับฉัน)
Matt Ruwe

2
ฉันไม่สะดวกกับคำตอบ แต่ใช้งานได้เราต้องการ "ทำไม"
Zinov

32

ฉันพบวิธีแก้ปัญหาสำหรับกรณีนี้ลองอัปเดต NuGet Package Manager

เพื่อทำสิ่งนี้:

  1. จาก VS ไปที่เครื่องมือ -> ส่วนขยายและอัปเดต
  2. เปิดการปรับปรุงตัวเลือกเมนูที่ด้านซ้ายจากนั้นเลือกVisual Studio แกลลอรี่
  3. หากมีการอัปเดตสำหรับ Nuget Package Installer ควรแสดงในรายการทางด้านขวา คลิกอัปเดต
  4. เริ่ม Visual Studio ใหม่

ให้ฉันติดตั้งแพคเกจโดยไม่มีปัญหาอีกครั้ง

หวังว่านี่จะช่วยได้!


1
ฉันติดตามสิ่งนี้ แต่ไม่มีการอัปเดตที่รอดำเนินการสำหรับ Nuget มีหนึ่งรายการสำหรับ "เครื่องมือเว็บ" และนี่ได้แก้ไขข้อผิดพลาด "การกำหนดค่า nuget ไม่ถูกต้อง" สำหรับฉัน
RyanJMcGowan

1
อาจไม่ใช่ความจริงที่ว่าคุณอัพเกรด "เครื่องมือทางเว็บ" แต่ความจริงที่ว่าการติดตั้งการปรับปรุงส่วนขยายต้องการให้คุณเริ่ม Visual Studio การรีสตาร์ทใช้งานได้สำหรับฉัน
Joe the Coder

ทำงานให้ฉันด้วย
แอรอน

ในกรณีของฉันไม่มีการอัปเดต แต่ฉันดาวน์โหลดเวอร์ชันล่าสุดจากdotnet.myget.org/F/nuget-vsix/vsixและใช้งานได้
DavidC

20

ในกรณีของฉันปรับปรุงMicrosoft.CodeDom.Providers.DotNetCompilerPlatformและMicrosoft.Net.Compilers ทำให้เกิดปัญหา

การลบbin, objและpackagesโฟลเดอร์และรีสตาร์ท Visual Studio 2015 การแก้ไขปัญหาสำหรับผม


1
โซลูชันอื่น ๆ ใช้งานไม่ได้ แต่วิธีนี้ไม่ได้ผล การลบ 'แพ็คเกจ' เป็นกุญแจสำคัญสำหรับฉัน
Gordon Slysz

1
ฉันไม่รู้ว่าทำไมการลบแพ็คเกจอาจใช้งานได้ แต่ทำไม่ได้! ฉันไม่ได้อัปเดตอะไรเลยฉันเพิ่งจะย้ายจาก Visual Studio 2010 ไปยัง 2015 และ. NET 4.0 เป็น 4.5
ป้องกันหนึ่ง

ฉันจะหาโฟลเดอร์ 'แพ็คเกจ' ได้ที่ไหน ฉันมีเพียง bin และ obj
Denny

8

คุณต้องล้างแคชของ NuGet ทั้งหมด; สำหรับสิ่งนี้คุณต้องไปที่ตัวเลือกและคลิกที่มันเช่นนี้:

ป้อนคำอธิบายรูปภาพที่นี่


พระเยซูโอ้คุณช่วยชีวิตฉันฉันเริ่มบ้า ... ฉันมักจะได้รับข้อผิดพลาด "ติดตั้งล้มเหลวย้อนกลับ ... " พยายามลบไฟล์กำหนดค่า NuGet มีคำตอบที่ยอมรับแล้วและลองรีสตาร์ท VS และคอมพิวเตอร์ ... ล้างข้อมูลฟีด nuget ของฉันกำหนดค่าอีกครั้ง .. ไม่มีอะไร แต่แล้วนี่ก็แก้ไขได้! ขอบคุณคนมาก!
TiagoM

7

ในการปิดทั่วไปและอีกครั้งเปิด VS 2015 การแก้ไขปัญหามากที่สุดฉันต้องวิ่งข้าม เมื่อฉันต้องการเรียกใช้การซ่อมแซมบนคอมพิวเตอร์เครื่องหนึ่งของฉัน

แต่ผมกำลังจะทำเช่นนี้ Closing and re-opening VS2015 resolved the issue for me ฉันคิดว่าฉันจะคลิกขวาบนแทนโครงการและยกเลิกโครงการ แล้วคลิกขวาและโหลดโครงการ แล้วจัดการ Nugetทำงาน!


4

เพียงเพื่อช่วยให้ทุกคนที่ลงจอดบนหน้านี้หลังจากอัปเดต VS2015 เพื่ออัปเดต 2 และพยายามจัดการแพ็คเกจบนเว็บไซต์การรับข้อผิดพลาด "ไฟล์กำหนดค่า NuGet ไม่ถูกต้อง" นี่เป็นปัญหาที่ทราบและได้รับการยอมรับ:

https://connect.microsoft.com/VisualStudio/feedback/details/2698136/nuget-configuration-is-invalid-manage-nuget-packages-for-solution-disabled

ฉันกลับมาทำงานอีกครั้งโดยติดตั้งตัวจัดการแพคเกจ 3.4.4 (เบต้า) จากhttp://dist.nuget.org/index.html

พวกเขายังระบุสถานะการปรับปรุง 3 สำหรับ Visual Studio จะมีการแก้ไขด้วย


ขอบคุณมากสำหรับสิ่งนี้! :)
Ramanpreet Singh

3

ฉันเดาว่า Nuget Package Manager กำลังสับสนกับ VSO ฉันสร้างโครงการใหม่เพิ่มแพ็คเกจลงไปได้เลยตรวจสอบใน TFS จากนั้นฉันกลับบ้าน "รับรุ่นล่าสุด" และเรียกใช้และล้มเหลวเนื่องจาก Nuget Package Manager ไม่กู้คืนแพ็คเกจของฉัน วิธีแก้ปัญหา: บนเครื่องที่บ้านของฉัน

  1. เปิด Nuget Package Manger ถอนการติดตั้งทุกแพ็คเกจที่ติดตั้ง
  2. เปิดโฟลเดอร์การอ้างอิงคลิกขวา> ลบสำหรับแพ็คเกจทั้งหมดที่คุณติดตั้ง
  3. ติดตั้งใหม่ผ่าน Nuget Package Manager
  4. เช็คอิน

ฉันพยายามเพิ่ม / อัปเดตแพคเกจจากโครงการใหม่และพบผลลัพธ์ที่ล้มเหลวเหมือนกัน ฉันปรับลดรุ่นเป็น VS2013 จนกว่าตัวจัดการแพคเกจจะได้รับการอัปเดตใน VS2015
clockwiseq

3

ฉันสามารถแก้ไขปัญหานี้ได้โดยติดตั้ง Nuget Package Manager ผ่านเครื่องมือ -> ส่วนขยายและการปรับปรุง


3

ฉันมีปัญหากับ Visual Studio 2017: ปรากฎว่ามีโครงการห้องสมุดสองชั้น - โครงการหนึ่งสำหรับ. Net และอีกโครงการสำหรับ C # ฉันสร้างหนึ่งสำหรับ. Net และเมื่อฉันพยายามติดตั้งแพคเกจเฉพาะ (Nunit ในกรณีของฉัน) ฉันได้รับข้อความแสดงข้อผิดพลาด

การสร้างโครงการใหม่เนื่องจากไลบรารีคลาส C #แก้ไขปัญหาได้


1

ในกรณีของฉันปัญหานี้เกิดจากการไม่ตรงกันในการตั้งค่ากรอบงานเป้าหมายของฉันภายใต้แต่ละโครงการ เมื่อฉันสร้างโครงการใหม่ VS 2015 มีค่าเริ่มต้นเป็น 4.5.2 แต่แพ็คเกจ nuget ทั้งหมดของฉันถูกสร้างขึ้นสำหรับ 4.6

ด้วยเหตุผลบางอย่าง VS 2015 ไม่แสดงข้อผิดพลาดเหล่านี้ให้ฉันเห็น ฉันไม่เห็นพวกเขาจนกว่าฉันจะสร้างโครงการใหม่ที่ว่างเปล่าและพยายามเพิ่มโครงการนักเก็ตที่นั่น พฤติกรรมนี้อาจรุนแรงขึ้นเพราะฉันได้เปลี่ยนชื่อโครงการสองสามครั้งในระหว่างการตั้งค่าเริ่มต้น

ฉันแก้ไขปัญหาโดย

  • เปลี่ยน Framework Framework ของโครงการเป็น 4.6
  • ปิด VS 2015
  • ลบ "แพ็คเกจ", "obj" และโฟลเดอร์ "bin"
  • เปิดโซลูชันอีกครั้งและลองเพิ่มแพ็คเกจ nuget อีกครั้ง

1

ฉันใช้ Visual Studio 2015 อัปเดต 3 และฉันจัดการเพื่อทำให้เกิดข้อผิดพลาดนี้ซ้ำ (แม้จะมีการอัปเดต 3 ซึ่งมีการแก้ไขที่ถูกกล่าวหา)

ตามที่แนะนำข้างต้นการแก้ไขที่เชื่อถือได้คือการทำดังต่อไปนี้ ... 1) ออกจาก Visual Studio, 2) ลบโฟลเดอร์แพ็คเกจ , 3) รีสตาร์ท VS

แต่ ... หากคุณไม่ต้องการออกจาก VS ทันทีด้วยเหตุผลบางอย่างฉันก็ยังสามารถเพิ่ม / ลบแพ็คเกจออกจากโครงการทั้งหมดได้โดยเลือกตัวเลือก ' จัดการแพคเกจ NuGet สำหรับการแก้ปัญหา ' แทนที่จะเป็นแต่ละโครงการที่มีปัญหา .


ทุกคนพูดถึงโฟลเดอร์แพ็คเกจอยู่ที่ไหน?
ShrimpCrackers

@ShrimpCrackers - ในตำแหน่งเดียวกับไฟล์โซลูชัน (.sln)
กล่องควบคุม



0

ฉันมีปัญหานี้ซึ่งดูเหมือนว่ามีสาเหตุมาจากสิ่งที่แตกในpackagesโฟลเดอร์ระดับโซลูชัน ฉันลบเนื้อหาของโฟลเดอร์และให้nugetติดตั้งแพ็คเกจทั้งหมดอีกครั้ง

ฉันสามารถติดตั้งแพ็คเกจใหม่ได้อีกครั้ง


0

เปิดโฟลเดอร์แพ็คเกจ ตรวจสอบว่ามีไฟล์ที่มีนามสกุล. deleteme อยู่หรือไม่ตัวอย่างเช่น Newtonsoft.Json.9.0.1.deleteme ลบแพ็คเกจทั้งหมดที่มีไฟล์. deleteme ด้วยตนเอง ลบไฟล์. deleteme ปิดและเปิด Nuget Explorer


0

เปลี่ยน "แหล่งแพ็กเกจ" ใน nuget เป็น All

รายละเอียด: ไม่มีข้อใดถูกช่วยในกรณีของฉัน ปัญหาของฉันคือฉัน จำกัด เฉพาะฟีดส่วนตัวเดียวเท่านั้น เมื่อฉันเปลี่ยน "แหล่งแพ็กเกจ" เป็นAllปัญหาของฉันได้รับการแก้ไข ฉันเชื่อว่าความสำคัญของเรื่องนี้คือส่วนตัว pkg ของฉันมีการพึ่งพา pkgs อื่น ๆ จาก nuget.org

ฉันหวังว่านี่จะช่วยคนได้


0

ในกรณีของฉันไม่มีสิ่งใดช่วยได้ สาเหตุหลักของปัญหาในกรณีของฉันคือฉันถอนการติดตั้งแพคเกจก่อนหน้านี้และไม่ได้ตรวจสอบการเปลี่ยนแปลงในการควบคุมแหล่งที่มา (TFS ในกรณีของฉัน) หลังจากตรวจสอบการเปลี่ยนแปลง (= การลบไฟล์ในโฟลเดอร์แพ็คเกจ) ฉันสามารถติดตั้งแพ็กเกจใหม่ได้


0

ในกรณีของฉันมีไฟล์ packages.config ที่ว่างเปล่าในไดเรกทอรี soultion หลังจากลบสิ่งนี้อัปเดตสำเร็จ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.