【发布时间】:2017-08-10 10:09:08
【问题描述】:
在运行批处理文件时,我收到以下错误:
nuget is not a recognized as an internal or external command
它在命令提示符下不起作用。看看下面的截图。
【问题讨论】:
标签: nuget command-prompt
在运行批处理文件时,我收到以下错误:
nuget is not a recognized as an internal or external command
它在命令提示符下不起作用。看看下面的截图。
【问题讨论】:
标签: nuget command-prompt
nuget 不被识别为内部或外部命令
由于NuGet是一个外部命令,在任意目录下Windows都无法识别,所以在NuGet.exe所在的路径中输入“NuGet”或“NuGet.exe”,如果要输入它在任意目录中,您应该从NuGet.org 下载 NuGet.exe(不是 VSIX)并将NuGet.exe 的本地路径设置为您的路径环境变量。
【讨论】:
当您不在 nuget.exe 所在的目录中或未为其设置环境变量时,会发生这种情况。
Windows 10
双击变量Path点击add new,粘贴到nuget.exe所在的位置。
重新启动命令提示符,问题应该得到解决。
其他操作系统
双击变量Path,如果没有其他位置,直接粘贴进去。如果有,在末尾加分号,粘贴进去。
重新启动命令提示符,问题应该得到解决。
【讨论】:
不要在路径中使用 nuget.exe,而是使用 .net 版本
dotnet nuget
【讨论】:
对于 .NET Core / .NET 5:
使用命令dotnet pack
您可以在.csproj 文件中设置这些属性,而不是使用.nuspec 文件,例如:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<PackageId>MyCompany.Project</PackageId>
<Version>1.0.0.1</Version>
</PropertyGroup>
...
</Project>
通过上述配置,运行dotnet pack 将创建一个名为
MyCompany.Project.1.0.0.1.nupkg
有关更多详细信息和配置选项,请参阅:https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target
【讨论】:
我点击这个链接,它对我来说很好用
How to Fix “not recognized as an internal or external command” in Windows
只需在路径变量中添加nuget的路径
【讨论】:
1 - 安装包:
我遵循了这个 Microsoft 文档。 Use the nuget.exe CLI in the package console
注意:- 此配置特定于项目,这会增加对项目的依赖 package.config
2 - 安装 exe:
您也可以按照以下文档再次从 Microsoft 下载并将路径设置为 nuget.exe 文件夹,正如该线程中的其他人所解释的那样。
NuGet CLI reference
【讨论】: