我在VS2013上安装了NuGet.Tools.2013.vsix。我喜欢从经理控制台创建一个nuget包,但是当我尝试时我得到了一个menagem:
术语“nuget'不被识别为cmdlet,函数,脚本文件或可操作程序的名称。检查名称的拼写,或路径 包括在内,验证路径是否正确,然后重试。
我不知道自己做错了什么。
可以使用管理器控制台创建包,或者我需要使用其他东西。
答案 0 :(得分:8)
不确定我是否完全理解这个问题,但如果您在Visual Studio中使用程序包管理器控制台,则无需在该窗口中使用nuget启动命令。我通常使用程序包管理器控制台来安装/更新当前解决方案的程序包。例如:
Install-Package Nunit
通常,您可以通过以下命令从正常的Windows命令行调用nuget来创建包:
nuget pack Library.csproj
有关详细信息,请参阅http://docs.nuget.org/docs/creating-packages/creating-and-publishing-a-package。
答案 1 :(得分:6)
NuGet包管理器控制台不公开任何命令来从Visual Studio中创建NuGet包。你也不能使用nuget.exe命令,因为你不是在启用PowerShell的控制台中与NuGet命令行交谈(除非你通过创建NuGet PowerShell配置文件来了解位于磁盘上的nuget.exe)例如别名。)
但是,如果要在Visual Studio(包括IntelliSense)中创建NuSpec文件,我会创建一个NuGet包供您安装。有关我博客的更多信息:http://www.xavierdecoster.com/install-nuspec-with-intellisense
这使您可以更轻松地创建NuGet清单文件,但是这仍然不会创建实际的包。为此,您必须回退到可以从https://nuget.org/nuget.exe下载的nuget.exe命令行工具。可以在NuGet Docs网站上找到文档。
答案 2 :(得分:2)
现在有一个Nuget包浏览器可以让你使用漂亮的小GUI创建Nuget包。通过ClickOnce部署安装。
https://npe.codeplex.com/downloads/get/clickOnce/NuGetPackageExplorer.application
答案 3 :(得分:0)
这是旧的,但我一直在寻找这些信息。我将http://docs.nuget.org/create/creating-and-publishing-a-package的信息与我在使用软件包管理器控制台时收集到的信息结合起来。
我通过执行以下操作从程序包管理器控制台创建了规范和程序包:
cd <projectFolder>
../.nuget/nuget spec
替换&lt; projectFolder&gt;使用项目文件的路径。
这将在项目文件夹中创建一个规范。 (.nuspec文件)
然后根据需要编辑这个新创建的文件。有些信息似乎是从AssemblyInfo文件中提取的,因此您可能还需要编辑它。
然后
../.nuget/nuget pack <projectFileName.csproj>
替换&lt; projectFileName.csproj&gt;使用您的项目文件名。 (我想这对于一个vb项目来说是.vbproj。)
答案 4 :(得分:0)
确保nuget.exe
上的%PATH%
位于.csproj
。
注意: 我们使用Jenkins并在构建过程中需要EnvInject来获取%PATH%变量。 < / p>
修改您的<Target Name="PostBuildMacros">
<GetAssemblyIdentity AssemblyFiles="$(TargetPath)">
<Output TaskParameter="Assemblies" ItemName="Targets" />
</GetAssemblyIdentity>
<ItemGroup>
<VersionNumber Include="@(Targets->'%(Version)')"/>
</ItemGroup>
</Target>
<PropertyGroup>
<PostBuildEventDependsOn>
$(PostBuildEventDependsOn);
PostBuildMacros;
</PostBuildEventDependsOn>
<PostBuildEvent>echo HELLO, THE ASSEMBLY VERSION IS: @(VersionNumber)</PostBuildEvent>
</PropertyGroup>
文件以包含程序集版本号的新宏变量,请参阅Determine Assembly Version during a Post Build Event?
.nupkg
每当程序集版本发生更改并且需要新的IF "$(ConfigurationName)" == "Release" (
CD /D $(ProjectDir)
IF EXIST $(TargetName).@(VersionNumber).nupkg EXIT
nuget pack $(ProjectPath) -Properties Configuration=$(ConfigurationName)
nuget push $(TargetName).@(VersionNumber).nupkg -s http://mynugetserver
)
时,请使用以下构建后脚本来部署新程序包;
import pygame
from pygame.locals import *
pygame.mixer.init()
a="first sentence..."
b="second sentence..."
sentList=[]
sentList.append(a)
sentList.append(b)
sound1= pygame.mixer.Sound('lose1.ogg')
soundList=[]
soundList.append(sound1)
chan1=""
for i in range (len(sentList)):
print sentList[i]
chan1= soundList[i].play()
while chan1.get_busy():
z=0