หนึ่งรายการแพ็คเกจ NuGet ที่ติดตั้งในเครื่องทั้งหมดได้อย่างไร?
มี NuGet เทียบเท่าRPM -qa
หรือไม่? ภายในChocolateyมีchocolatey list -localonly
แต่สำหรับชีวิตของฉันฉันไม่สามารถหา NuGet ที่เทียบเท่ากับคำสั่งนั้นได้
หนึ่งรายการแพ็คเกจ NuGet ที่ติดตั้งในเครื่องทั้งหมดได้อย่างไร?
มี NuGet เทียบเท่าRPM -qa
หรือไม่? ภายในChocolateyมีchocolatey list -localonly
แต่สำหรับชีวิตของฉันฉันไม่สามารถหา NuGet ที่เทียบเท่ากับคำสั่งนั้นได้
คำตอบ:
ในNuGet Package Manager Consoleให้ป้อนคำสั่งต่อไปนี้:
Get-Package
สิ่งนี้จะพิมพ์รายการแพ็กเกจที่ติดตั้งออกมาหรือหากไม่มีให้เขียนบรรทัดต่อไปนี้ลงในคอนโซล:
PM> Get-Package
No packages installed.
สำหรับรายละเอียดเพิ่มเติมดูได้ที่ที่NuGet PowerShell อ้างอิง
Get-Package
, ชื่อแพคเกจถูกตัดเมื่อพวกเขามีมากกว่า 32 characteres เป็นไปได้ไหมที่จะเพิ่มคอลัมน์ชื่อแพ็กเกจเพื่อให้เอาต์พุตแสดงชื่อเต็มโดยไม่ต้องตัดทอน
Get-Package | Format-Table -AutoSize
จะทำ
ถ้าคุณเพิ่งทำ
Get-Package
มันจะแสดงรายการแพ็กเกจและสถานที่อ้างอิง มันจะแสดงรายการแพ็กเกจเดียวกันซ้ำแล้วซ้ำเล่าหากคุณมีการอ้างอิงหลายครั้ง หากคุณต้องการรับรายการแพ็คเกจทั้งหมดที่ติดตั้งในโซลูชันคุณสามารถทำได้
Get-Package | select -Unique Id, Versions
Get-Package -ProjectName "Your.Project.Name"
จะแสดงแพ็คเกจสำหรับโครงการที่ระบุ
ดูเพิ่มเติม: การอ้างอิง PowerShell คอนโซล Package Manager
โปรดทราบว่าแต่ละโปรเจ็กต์จะมีไฟล์ package.config ซึ่งใช้เพื่อติดตามแพ็กเกจที่ติดตั้ง หากมีการเปลี่ยนแปลง (โดยเฉพาะหากคุณแก้ไขย้อนหลัง) โปรเจ็กต์อาจไม่ดาวน์โหลดเวอร์ชันแพ็กเกจที่ถูกต้องโดยอัตโนมัติ ในกรณีนั้นให้จดบันทึกแพ็คเกจที่จำเป็นและทำการถอนการติดตั้งแพ็คเกจตามด้วยแพ็คเกจการติดตั้งสำหรับแต่ละแพ็คเกจ
นอกจากนี้การสำรองข้อมูลเป็นเพื่อนของคุณ! ;)
ใน Visual Studio
packages.config
ไฟล์ โปรดดูเอกสารไมโครซอฟท์
ฉันจะแสดงรายการ NuGet Packages ที่ติดตั้งทั้งหมดได้อย่างไร?
สมมติว่าNuGet ได้รับการติดตั้งอย่างถูกต้อง
คลิกขวาที่โหนดโครงการแล้วคลิกจัดการแพ็คเกจ NuGet
ดูรายการแพ็คเกจที่ติดตั้ง
ตอบ"มีวิธีดำเนินการโดยใช้ nuget.exe หรือไม่ - bitbonk" :
nuget list -Source C:/packages
โดยที่ C: / package คือเส้นทางไปยังที่เก็บในเครื่องของคุณ
หากคุณติดตั้งรันไทม์. NET Core คุณสามารถใช้คำสั่งdotnet list packageในเครื่องมือ. NET Core CLI เพื่อดึงแพ็กเกจที่ติดตั้งสำหรับโซลูชันหรือโปรเจ็กต์ที่กำหนด ใช้มันจากบรรทัดคำสั่งของ Windows:
dotnet list "C:\Source\MySolution\MySolution.sln" package
ใช้งานได้กับทั้งโครงการ. NET Framework และ. NET Core
หมายเหตุ:เพื่อให้คำสั่งนี้ทำงานโซลูชันต้องใช้รูปแบบ NuGet PackageReference ใหม่สำหรับการอ้างอิงแพ็คเกจ NuGet การย้ายข้อมูลทำได้ง่ายเพียงคลิกขวาที่ package.config แล้วคลิก "Migrate Packages.config ไปที่ PackageReference ... " จากนั้นเรียกคืนแพ็กเกจโดยสร้างโซลูชัน
ตอบ "มีวิธีดำเนินการโดยใช้ nuget.exe หรือไม่" - bitbonk
อ้างอิงจากคำตอบของjstarด้านบน ฉันใช้\
แทน/
สิ่งที่เหมาะกับสภาพแวดล้อม Windows ที่ nuget อยู่ที่บ้านมากกว่า การแก้ไขคำตอบของฉันถูกปฏิเสธดังนั้นฉันจึงโพสต์เอง
nuget list -Source c:\code\packages
c:\code
เส้นทางไปยังที่เก็บโค้ดในเครื่องของคุณอยู่ที่ไหน packages
โฟลเดอร์ที่อยู่ในระดับเดียวกันเช่นการแก้ปัญหาไฟล์ของคุณ (* .sln)