如何在 C# 项目中使用 windows 命令行安装 Nuget 包?
How to install Nuget package using windows command line in C# project?
我已经下载了 NuGet 版本 - 5.1.0 并尝试使用 cmd 安装其中一个包 - log4net。它失败了。下面是错误 -
Microsoft Windows [Version 10.0.19042.1348] (c) Microsoft Corporation.
All rights reserved.
D:\Personal\ConsoleApplication1\ClassLibrary1>"D:\Personal\ConsoleApplication1\nuget_1\nuget.exe"
install-package log4net Unknown command: 'install-package'
NuGet.CommandLine.CommandLineException: Unknown command:
'install-package' at
NuGet.CommandLine.CommandManager.GetCommand(String commandName) at
NuGet.CommandLine.CommandLineParser.ParseCommandLine(IEnumerable`1
commandLineArgs) at NuGet.CommandLine.Program.MainCore(String
workingDirectory, String[] args)
D:\Personal\ConsoleApplication1\ClassLibrary1>
在这里,ClassLibrary1 是 C# 项目,我必须在其中添加 log4net 包。我不想使用 Visual Studio 中可用的 NuGet 包管理器控制台选项。
我写的命令正确吗?
Install-Package 是您通过 Visual Studio 安装的方式。通过 CLI 安装包的 cmdlet 是 nuget install <Package-Name>
.
请参阅此 Microsoft 文档以供参考:
https://docs.microsoft.com/en-us/nuget/consume-packages/install-use-packages-nuget-cli
在您的解决方案中安装 NuGet 包的官方方法有 3 种。
使用包管理器控制台;它包含在 visual studio ide(目前仅在 window 平台上)或从 nuget 安装 nuget 命令行工具 gallery.You 可以在包管理器控制台中复制并粘贴所需的 nuget 包 ide 以 "Install-Package" 开头或在命令行中以 "nuget install " 开头。这将在 csproj
中添加 packagereference
使用.Net CLI;您需要安装与.net sdk 一起安装的.net 命令行工具。因此,您只需要在命令行或 bash 或终端中复制和粘贴即可。这适用于 linux、window、mac 操作系统。这最终会在 csproj 文件中添加包引用。
使用 PackageReference;您直接将引用复制并粘贴到 csproj 文件中。
使用Paket CLI,也是我以前从未使用过的另一种cli。
对于那些希望将包添加到他们的项目文件(而不是目录中的一堆文件)的人,请使用:
dotnet add package <PACKAGE_NAME>
这只有在安装了 dotnet command-line 工具(通过安装 .NET Core SDK 获得)时才有效。
可在此处找到更多信息:https://docs.microsoft.com/en-us/nuget/consume-packages/install-use-packages-dotnet-cli
我已经下载了 NuGet 版本 - 5.1.0 并尝试使用 cmd 安装其中一个包 - log4net。它失败了。下面是错误 -
Microsoft Windows [Version 10.0.19042.1348] (c) Microsoft Corporation. All rights reserved.
D:\Personal\ConsoleApplication1\ClassLibrary1>"D:\Personal\ConsoleApplication1\nuget_1\nuget.exe" install-package log4net Unknown command: 'install-package' NuGet.CommandLine.CommandLineException: Unknown command: 'install-package' at NuGet.CommandLine.CommandManager.GetCommand(String commandName) at NuGet.CommandLine.CommandLineParser.ParseCommandLine(IEnumerable`1 commandLineArgs) at NuGet.CommandLine.Program.MainCore(String workingDirectory, String[] args)
D:\Personal\ConsoleApplication1\ClassLibrary1>
在这里,ClassLibrary1 是 C# 项目,我必须在其中添加 log4net 包。我不想使用 Visual Studio 中可用的 NuGet 包管理器控制台选项。
我写的命令正确吗?
Install-Package 是您通过 Visual Studio 安装的方式。通过 CLI 安装包的 cmdlet 是 nuget install <Package-Name>
.
请参阅此 Microsoft 文档以供参考: https://docs.microsoft.com/en-us/nuget/consume-packages/install-use-packages-nuget-cli
在您的解决方案中安装 NuGet 包的官方方法有 3 种。
使用包管理器控制台;它包含在 visual studio ide(目前仅在 window 平台上)或从 nuget 安装 nuget 命令行工具 gallery.You 可以在包管理器控制台中复制并粘贴所需的 nuget 包 ide 以 "Install-Package" 开头或在命令行中以 "nuget install " 开头。这将在 csproj
中添加 packagereference
使用.Net CLI;您需要安装与.net sdk 一起安装的.net 命令行工具。因此,您只需要在命令行或 bash 或终端中复制和粘贴即可。这适用于 linux、window、mac 操作系统。这最终会在 csproj 文件中添加包引用。
使用 PackageReference;您直接将引用复制并粘贴到 csproj 文件中。
使用Paket CLI,也是我以前从未使用过的另一种cli。
对于那些希望将包添加到他们的项目文件(而不是目录中的一堆文件)的人,请使用:
dotnet add package <PACKAGE_NAME>
这只有在安装了 dotnet command-line 工具(通过安装 .NET Core SDK 获得)时才有效。
可在此处找到更多信息:https://docs.microsoft.com/en-us/nuget/consume-packages/install-use-packages-dotnet-cli