Installare gli strumenti client di NuGetInstall NuGet client tools

Se servono istruzioni per installare un pacchetto, Vedere Modi per installare pacchetti NuGet.Looking to install a package? See Ways to install NuGet packages.

Per usare NuGet, come consumer o autore di pacchetti, è possibile usare gli strumenti dell'interfaccia della riga di comando nonché le funzionalità NuGet in Visual Studio.To work with NuGet, as a package consumer or creator, you can use command-line interface (CLI) tools as well as NuGet features in Visual Studio. Questo articolo descrive brevemente le funzionalità dei diversi strumenti, come installarli e un confronto delle funzionalità disponibili.This article briefly outlines the capabilities of the different tools, how to install them, and their comparative feature availability. Per iniziare a usare NuGet per utilizzare i pacchetti, vedere Installare e usare un pacchetto (interfaccia della riga di comando di dotnet) e Installare e usare un pacchetto (Visual Studio).To get started using NuGet to consume packages, see Install and use a package (dotnet CLI) and Install and use a package (Visual Studio). Per iniziare a creare i pacchetti NuGet, vedere Creare e pubblicare un pacchetto .NET Standard (interfaccia della riga di comando dotnet) e Creare e pubblicare un pacchetto .NET Standard (Visual Studio).To get started creating NuGet packages, see Create and publish a NET Standard package (dotnet CLI) and Create and publish a NET Standard package (Visual Studio).

Tool               Tool                DESCRIZIONEDescription Download         Download         
dotnet.exedotnet.exe Strumento dell'interfaccia della riga di comando per librerie .NET Core e .NET Standard e per qualsiasi progetto di tipo SDK, ad esempio quelli destinati a .NET Framework.CLI tool for .NET Core and .NET Standard libraries, and for any SDK-style project such as one that targets .NET Framework. Incluso in .NET Core SDK, offre le principali funzionalità NuGet per tutte le piattaforme.Included with the .NET Core SDK and provides core NuGet features on all platforms. A partire da Visual Studio 2017, l'interfaccia della riga di comando dotnet viene installata automaticamente con qualsiasi carico di lavoro correlato a .NET Core.(Starting in Visual Studio 2017, the dotnet CLI is automatically installed with any .NET Core related workloads.) .NET Core SDK.NET Core SDK
nuget.exenuget.exe Strumento dell'interfaccia della riga di comando per librerie .NET Framework e per qualsiasi progetto non di tipo SDK, ad esempio quelli destinati a librerie .NET Standard.CLI tool for .NET Framework libraries and for any non-SDK-style project such as one that targets .NET Standard libraries. Fornisce tutte le funzionalità di NuGet in Windows e la maggior parte delle funzionalità in Mac e Linux per l'esecuzione in Mono.Provides all NuGet capabilities on Windows, provides most features on Mac and Linux when running under Mono. nuget.exenuget.exe
Visual StudioVisual Studio In Windows, fornisce le funzionalità NuGet tramite l'interfaccia utente di Gestione pacchetti e la console di Gestione pacchetti, incluse nei carichi di lavoro correlati a .NET.On Windows, provides NuGet capabilities through the Package Manager UI and Package Manager Console; included with .NET-related workloads. In Mac, fornisce alcune funzionalità tramite l'interfaccia utente.On Mac, provides certain features through the UI. In Visual Studio Code, le funzionalità di NuGet vengono offerte tramite le estensioni.In Visual Studio Code, NuGet features are provided through extensions. Visual Studio 2017Visual Studio 2017

Anche l'interfaccia della riga di comando di MSBuild offre la possibilità di ripristinare e creare pacchetti, utile principalmente nei server di compilazione.The MSBuild CLI also provides the ability to restore and create packages, which is primarily useful on build servers. MSBuild non è uno strumento generico per l'utilizzo di NuGet.MSBuild is not a general-purpose tool for working with NuGet.

Strumenti di interfaccia della riga di comandoCLI tools

I due strumenti di interfaccia della riga di comando NuGet sono dotnet.exe e nuget.exe.The two NuGet CLI tools are dotnet.exe and nuget.exe. Vedere la disponibilità delle funzionalità per un confronto.See feature availability for a comparison.

  • Per impostare come destinazione .NET Core o .NET Standard, usare l'interfaccia della riga di comando dotnet.To target .NET Core or .NET Standard, use the dotnet CLI. L'interfaccia della riga di comando di dotnet è richiesta per il formato di progetto di tipo SDK, che usa l'attributo SDK.The dotnet CLI is required for the SDK-style project format, which uses the SDK attribute.
  • Per avere come destinazione .NET Framework (solo progetti non in stile SDK), usare l'interfaccia della riga di comando di nuget.exe.To target .NET Framework (non-SDK-style project only), use the nuget.exe CLI. Se viene eseguita la migrazione del progetto da packages.config a PackageReference, usare l'interfaccia della riga di comando dotnet.If the project is migrated from packages.config to PackageReference, use the dotnet CLI.

Interfaccia della riga di comando di dotnet.exedotnet.exe CLI

L'interfaccia della riga di comando di .NET Core 2.0, dotnet.exe, funziona in tutte le piattaforme (Windows, Mac e Linux) e offre le funzionalità principali di NuGet, ad esempio l'installazione, il ripristino e la pubblicazione di pacchetti.The .NET Core 2.0 CLI, dotnet.exe, works on all platforms (Windows, Mac, and Linux) and provides core NuGet features such as installing, restoring, and publishing packages. dotnet supporta l'integrazione diretta con i file di progetto .NET Core (ad esempio .csproj) e ciò è utile nella maggior parte degli scenari.dotnet provides direct integration with .NET Core project files (such as .csproj), which is helpful in most scenarios. dotnet supporta anche la compilazione diretta per ogni piattaforma e non richiede di installare Mono.dotnet is also built directly for each platform and does not require you to install Mono.

Installazione:Installation:

Per informazioni su come usare i comandi di base con l'interfaccia della riga di comando di dotnet, vedere Installare e usare pacchetti tramite l'interfaccia della riga di comando di dotnet.To learn how to use basic commands with the dotnet CLI, see Install and use packages using the dotnet CLI.

Interfaccia della riga di comando di nuget.exenuget.exe CLI

L'interfaccia della riga di comando di nuget.exe, nuget.exe, è l'utilità da riga di comando per Windows che offre tutte le funzionalità di NuGet. Può essere eseguita anche in Mac OSX e Linux tramite Mono, con alcune limitazioni.The nuget.exe CLI, nuget.exe, is the command-line utility for Windows that provides all NuGet capabilities; it can also be run on Mac OSX and Linux using Mono with some limitations.

Per informazioni su come usare i comandi di base con l'interfaccia della riga di comando di nuget.exe, vedere Installare e usare pacchetti tramite l'interfaccia della riga di comando di nuget.exe.To learn how to use basic commands with the nuget.exe CLI, see Install and use packages using the nuget.exe CLI.

Installazione:Installation:

WINDOWSWindows

Nota

Per l'esecuzione di NuGet.exe 5.0 e versioni successive è richiesto .NET Framework 4.7.2 o versione successiva.NuGet.exe 5.0 and later require .NET Framework 4.7.2 or later to execute.

  1. Visitare nuget.org/downloads e selezionare NuGet 3.3 o versioni successive (la versione 2.8.6 non è compatibile con Mono).Visit nuget.org/downloads and select NuGet 3.3 or higher (2.8.6 is not compatible with Mono). È sempre consigliata la versione più recente e la versione 4.1.0+ è obbligatoria per pubblicare i pacchetti in nuget.org.The latest version is always recommended, and 4.1.0+ is required to publish packages to nuget.org.
  2. Ogni download è direttamente il file nuget.exe.Each download is the nuget.exe file directly. Indicare al browser di salvare il file in una cartella di propria scelta.Instruct your browser to save the file to a folder of your choice. Il file non è un programma di installazione. Non verrà visualizzato alcun elemento se lo si esegue direttamente dal browser.The file is not an installer; you won't see anything if you run it directly from the browser.
  3. Aggiungere la cartella in cui è stato posizionato il file nuget.exe alla variabile di ambiente PATH per usare lo strumento dell'interfaccia della riga di comando da qualsiasi posizione.Add the folder where you placed nuget.exe to your PATH environment variable to use the CLI tool from anywhere.

macOS/LinuxmacOS/Linux

I comportamenti possono variare leggermente in base alla distribuzione del sistema operativo.Behaviors may vary slightly by OS distribution.

  1. Installare Mono 4.4.2 o versioni successive.Install Mono 4.4.2 or later.

  2. Eseguire il comando seguente da un prompt della shell:Execute the following command at a shell prompt:

    # Download the latest stable `nuget.exe` to `/usr/local/bin`
    sudo curl -o /usr/local/bin/nuget.exe https://dist.nuget.org/win-x86-commandline/latest/nuget.exe
    
  3. Creare un alias aggiungendo lo script seguente al file appropriato per il sistema operativo (in genere ~/.bash_aliases o ~/.bash_profile):Create an alias by adding the following script to the appropriate file for your OS (typically ~/.bash_aliases or ~/.bash_profile):

    # Create as alias for nuget
    alias nuget="mono /usr/local/bin/nuget.exe"
    
  4. Ricaricare la shell.Reload the shell. Testare l'installazione immettendo nuget senza parametri.Test the installation by entering nuget with no parameters. Dovrebbe essere visualizzata la Guida dell'interfaccia della riga di comando di NuGet.NuGet CLI help should display.

Suggerimento

Usare nuget update -self in Windows per aggiornare una copia esistente di nuget.exe alla versione più recente.Use nuget update -self on Windows to update an existing nuget.exe to the latest version.

Nota

La versione più recente consigliata dell'interfaccia della riga di comando di NuGet è sempre disponibile all'indirizzo https://dist.nuget.org/win-x86-commandline/latest/nuget.exe.The latest recommended NuGet CLI is always available at https://dist.nuget.org/win-x86-commandline/latest/nuget.exe. Per motivi di compatibilità con sistemi di integrazione continua meno recenti, da un URL precedente, https://nuget.org/nuget.exe, è attualmente possibile ottenere la versione 2.8.6 deprecata dell'interfaccia della riga di comando.For compatibility purposes with older continuous integration systems, a previous URL, https://nuget.org/nuget.exe currently provides the deprecated 2.8.6 CLI tool.

Visual StudioVisual Studio

  • Visual Studio Code: le funzionalità di NuGet sono disponibili tramite estensioni del marketplace oppure usare gli strumenti di interfaccia della riga di comando dotnet.exe o nuget.exe.Visual Studio Code: NuGet capabilities are available through marketplace extensions, or use the dotnet.exe or nuget.exe CLI tools.

  • Visual Studio per Mac: alcune funzionalità di NuGet sono incorporate direttamente.Visual Studio for Mac: certain NuGet capabilities are built in directly. Per una procedura dettagliata, vedere Inserimento di un pacchetto NuGet nel progetto.See Including a NuGet package in your project for a walkthrough. Per le altre funzionalità, usare gli strumenti di interfaccia della riga di comando dotnet.exe o nuget.exe.For other capabilities, use the dotnet.exe or nuget.exe CLI tools.

  • Visual Studio in Windows: Gestione pacchetti NuGet è incluso in Visual Studio 2012 e versioni successive.Visual Studio on Windows: The NuGet Package Manager is included with Visual Studio 2012 and later. Visual Studio include l'interfaccia utente di Gestione pacchetti e la console di Gestione pacchetti, tramite cui è possibile eseguire la maggior parte delle operazioni di NuGet.Visual Studio provides the Package Manager UI and the Package Manager Console, through which you can run most NuGet operations.

    • A partire da Visual Studio 2017, il programma di installazione include Gestione pacchetti NuGet in qualsiasi carico di lavoro che usa .NET.Starting in Visual Studio 2017, the installer includes the NuGet Package Manager with any workload that employs .NET. Per eseguire l'installazione separatamente o per verificare se l'installazione di Gestione pacchetti è già stata eseguita, eseguire il programma di installazione di Visual Studio e selezionare l'opzione Singoli componenti > Strumenti per il codice > Gestione pacchetti NuGet.To install separately, or to verify that the Package Manager is installed, run the Visual Studio installer and check the option under Individual Components > Code tools > NuGet package manager.
    • L'interfaccia utente e la console di Gestione pacchetti sono disponibili unicamente per Visual Studio in WindowsThe Package Manager UI and Console are unique to Visual Studio on Windows. e al momento non sono disponibili in Visual Studio per Mac.They are not presently available on Visual Studio for Mac.
    • È richiesto uno strumento dell'interfaccia della riga di comando per supportare le funzionalità di NuGet nell'IDE.A CLI tool is required to support NuGet features in the IDE. È possibile usare l'interfaccia della riga di comando dotnet o nuget.exe.You can use either the dotnet CLI or the the nuget.exe CLI. L'interfaccia della riga di comando dotnet viene installata con alcuni carichi di lavoro di Visual Studio, ad esempio .NET Core.The dotnet CLI is installed with some Visual Studio workloads, such as .NET Core. L'interfaccia della riga di comando nuget.exe deve essere installata separatamente, come descritto in precedenza.The nuget.exe CLI must be installed separately as described earlier.
    • I comandi della console di Gestione pacchetti funzionano solo all'interno di Visual Studio in Windows e non all'interno di altri ambienti di PowerShell.Package Manager Console commands work only within Visual Studio on Windows and do not work within other PowerShell environments.
    • Per Visual Studio 2010 e versioni precedenti, installare l'estensione "NuGet Package Manager per Visual Studio".For Visual Studio 2010 and earlier, install the "NuGet Package Manager for Visual Studio" extension.
    • Le estensioni NuGet per Visual Studio 2013 e 2015 possono anche essere scaricate da https://dist.nuget.org/index.html.NuGet Extensions for Visual Studio 2013 and 2015 can also be downloaded from https://dist.nuget.org/index.html.
    • Se si desidera visualizzare in anteprima le funzionalità future di NuGet, installare Visual Studio 2017 Preview, una versione di anteprima affiancata alle versioni stabili di Visual Studio.If you'd like to preview upcoming NuGet features, install the Visual Studio 2017 Preview, which works side-by-side with stable releases of Visual Studio. Per segnalare problemi o condividere idee per le anteprime, aprire un problema nel repository GitHub di NuGet.To report problems or share ideas for previews, open an issue on the NuGet GitHub repository.

Disponibilità delle funzionalitàFeature availability

FunzionalitàFeature Interfaccia della riga di comando dotnetdotnet CLI Interfaccia della riga di comando nuget (Windows)nuget CLI (Windows) Interfaccia della riga di comando nuget (Mono)nuget CLI (Mono) Visual Studio (Windows)Visual Studio (Windows) Visual Studio per MacVisual Studio for Mac
Ricerche nei pacchettiSearch packages
Installare/disinstallare pacchettiInstall/uninstall packages ✔(1)✔(1)
Aggiornamento di pacchettiUpdate packages
Ripristinare pacchettiRestore packages ✔(2)✔(2)
Gestire feed di pacchetti (origini)Manage package feeds (sources)
Gestire i pacchetti in un feedManage packages on a feed
Impostare le chiavi API per i feedSet API keys for feeds
Creare i pacchetti(3)Create packages(3) ✔(4)✔(4)
Pubblicazione di pacchettiPublish packages
Replicare pacchettiReplicate packages
Gestire le cartelle global-packages e della cacheManage global-package and cache folders
Gestire la configurazione di NuGetManage NuGet configuration

(1) Non influisce sui file di progetto; usare invece dotnet.exe.(1) Does not affect project files; use dotnet.exe instead.

(2) Funziona solo con il file packages.config e non con file di soluzione (.sln).(2) Works only with packages.config file and not with solution (.sln) files.

(3) Varie funzionalità avanzate per i pacchetti sono disponibili solo tramite l'interfaccia della riga di comando, perché non sono rappresentate negli strumenti dell'interfaccia utente di Visual Studio.(3) Various advanced package features are available through the CLI only as they aren't represented in the Visual Studio UI tools.

(4) Funziona con i file .nuspec ma non con i file di progetto.(4) Works with .nuspec files but not with project files.

Gli sviluppatori che lavorano in ambiente Windows possono anche esplorare NuGet Package Explorer, uno strumento open source autonomo per esplorare, creare e modificare visivamente i pacchetti NuGet.Developers working on Windows can also explore the NuGet Package Explorer, an open-source, stand-alone tool to visually explore, create, and edit NuGet packages. È molto utile, ad esempio, per apportare modifiche sperimentali alla struttura di un pacchetto senza dovere ricompilare il pacchetto.It's very helpful, for example, to make experimental changes to a package structure without rebuilding the package.