Nejčastější dotazy týkající se NuGet.org, jako jsou NuGet.org otázky k účtu, najdete v NuGet.org nejčastějších dotazech.
Všechny informace o uživatelském rozhraní i nástrojích příkazového řádku jsou k dispozici v průvodci instalací.
Nástroj příkazového řádku , nuget.exe
, sestavení a spuštění obvykle v systému Windows. NuGet může běžet v operačních systémech Unix pomocí mono
, ale není oficiálně podporován zásadami podpory NuGet.
Společnost Mono převedla vlastnictví na Wine a společnost Microsoft ji již neudržuje.
Primárním zdrojem informací o balíčku je stránka s výpisem na nuget.org (nebo jiný soukromý informační kanál). Každá stránka balíčku na nuget.org obsahuje popis balíčku, jeho historii verzí a statistiky využití. Oddíl Informace na stránce balíčku obsahuje také odkaz na web projektu, kde obvykle najdete mnoho příkladů a další dokumentaci, které vám pomůžou zjistit, jak se balíček používá.
Další informace naleznete v tématu Hledání a výběr balíčků.
- Visual Studio ve Windows podporuje uživatelské rozhraní Správce balíčků a konzolu Správce balíčků.
- Visual Studio pro Mac má integrované funkce NuGet, jak je popsáno na Zahrnutí balíčku NuGet do projektu
- Visual Studio Code (všechny platformy) nemá žádnou přímou integraci NuGetu. Použijte rozhraní příkazového řádku NuGet nebo rozhraní příkazového řádku dotnet.
- Azure DevOps poskytuje krok sestavení pro obnovení balíčků NuGet. Privátní informační kanály balíčků NuGet můžete hostovat také v Azure DevOps.
V sadě Visual Studio použijte příkaz Nápověda > o sadě Microsoft Visual Studio a podívejte se na verzi zobrazenou vedle Správce balíčků NuGet.
Případně spusťte konzolu Správce balíčků (Nástroje > NuGet Správce balíčků > konzolu Správce balíčků) a zadejte $host
informace o NuGetu včetně verze.
NuGet obecně funguje pro jazyky .NET a je navržený tak, aby přenesl knihovny .NET do projektu. Protože také podporuje automatizaci MSBuild a Visual Studio v některých typech projektů, podporuje také jiné projekty a jazyky v různých stupních.
Nejnovější verze NuGetu podporuje C#, Visual Basic, F#, WiX, C++ a Q#.
NuGet podporuje celou řadu šablon projektů, jako jsou Windows, Web, Cloud, SharePoint, Wix atd.
V uživatelském rozhraní Správce balíčků přejděte na kartu Aktualizace a vyberte Aktualizovat vše nebo použijte Update-Package
příkaz z konzoly Správce balíčků.
Pokud chcete aktualizovat samotnou šablonu, musíte ručně aktualizovat úložiště šablon. Viz Xavier Decoster blog o tomto tématu. Mějte na paměti, že se to provádí na vlastní nebezpečí, protože ruční aktualizace můžou šablonu poškodit, pokud nejnovější verze všech závislostí nejsou vzájemně kompatibilní.
Ano, NuGet funguje přímo z příkazového řádku. Viz průvodce instalací a referenční informace k rozhraní příkazového řádku.
Viz průvodce instalací. Pokud chcete zkontrolovat aktuální nainstalovanou verzi nástroje, použijte nuget help
.
Můžete distribuovat nuget.exe podle podmínek licence MIT. Zodpovídáte za aktualizaci a údržbu všech kopií nuget.exe, které se rozhodnete distribuovat.
Ano, je možné přidat vlastní příkazy do nuget.exe
, jak je popsáno v Rob Reynold příspěvku k dispozici prostřednictvím Archive.org.
Objekt nejvyšší úrovně v modelu objektu automatizace sady Visual Studio se nazývá objekt DTE (Development Tools Environment). Konzola ji poskytuje prostřednictvím proměnné s názvem $DTE
. Další informace naleznete v tématu Přehled modelu automatizace v dokumentaci k rozšiřitelnosti sady Visual Studio.
Pokusím se přetypovat proměnnou $DTE na typ DTE2, ale zobrazí se chyba: Nelze převést hodnotu EnvDTE.DTEClass typu EnvDTE.DTEClass na typ EnvDTE80.DTE2. Co je?
Jedná se o známý problém s interakcí PowerShellu s objektem COM. Vyzkoušejte následující kroky:
`$dte2 = Get-Interface $dte ([EnvDTE80.DTE2])`
Get-Interface
je pomocná funkce přidaná hostitelem PowerShellu NuGet.
Mám více verzí knihovny, které cílí na různé verze rozhraní .NET Framework. Návody vytvořit jeden balíček, který to podporuje?
Viz podpora více verzí a profilů rozhraní .NET Framework.
Podívejte se na přehled hostitelských balíčků.
Viz Hromadné publikování balíčků NuGet (jeffhandly.com).
Ano, podívejte se na blogový příspěvek Scotta Hanselmana How to access NuGet when nuget.org is down (or you're on a plane) (hanselman.com).
repositoryPath
Nastavte nastavení v Nuget.Config
použití nuget config -set repositoryPath=<path>
.
Nastavte hodnotu disableSourceControlIntegration
in Nuget.Config
na true
hodnotu . Tento klíč funguje na úrovni řešení a proto je potřeba ho $(Solutiondir)\.nuget\Nuget.Config
přidat do souboru. Povolení obnovení balíčku ze sady Visual Studio automaticky vytvoří tento soubor.
Viz Povolení a zakázání obnovení balíčku.
Proč se mi při instalaci místního balíčku se vzdálenými závislostmi zobrazuje chyba Nejde vyřešit chybu závislostí?
Při instalaci místního balíčku do projektu musíte vybrat zdroj Vše . Tím se agregují všechny informační kanály místo toho, aby používaly jenom jeden. Důvodem této chyby je, že uživatelé místního úložiště často chtějí zabránit náhodné instalaci vzdáleného balíčku z důvodu firemních zásady.
Mám ve stejné složce více projektů, jak můžu pro každý projekt použít samostatné soubory packages.config?
Ve většině projektů, kde samostatné projekty žijí v samostatných složkách, to není problém, protože NuGet identifikuje packages.config
soubory v jednotlivých projektech. Pomocí NuGetu 3.3 nebo více projektů ve stejné složce můžete do názvů souborů packages.{project-name}.config
vložit název projektu packages.config
a NuGet tento soubor používá.
To není problém při použití PackageReference, protože každý soubor projektu obsahuje svůj vlastní seznam závislostí.
- Přidání
https://api.nuget.org/v3/index.json
do seznamu zdrojů nebo - Odstraňte
%appdata%\.nuget\NuGet.Config
(Windows) nebo~/.nuget/NuGet/NuGet.Config
(Mac/Linux) a nechte NuGet znovu vytvořit.
Migroval(a) jsem na PackageReference, proč můj build selhává, protože tento projekt odkazuje na balíčky NuGet, které v tomto počítači chybí?
V projektech packages.config by při instalaci balíčku s build
props nebo cíli nuGet přidal EnsureNuGetPackageBuildImports
cíl k ověření importu obsahu msbuild balíčků před sestavením.
target
Pokud byl změněn ručně, NuGet nemusí být schopen zjistit, že je potřeba odebrat při migraci.
Pokud je projekt a v souboru projektu stále máte PackageReference
tento cíl, měli byste ho bezpečně odebrat.