我在我的VS2013上安裝了NuGet.Tools.2013.vsix。我喜歡從管理控制檯創建nuget包,但是當我嘗試獲取mensagem時:從Visual Studio 2013創建nuget包
術語'nuget'不被識別爲cmdlet,函數,腳本文件或可操作程序的名稱。檢查名稱的拼寫,或者如果包含路徑 ,請驗證路徑是否正確,然後重試。
我不知道我做錯了什麼。
可能使用管理器控制檯來創建一個包,或者我需要使用其他的東西。
我在我的VS2013上安裝了NuGet.Tools.2013.vsix。我喜歡從管理控制檯創建nuget包,但是當我嘗試獲取mensagem時:從Visual Studio 2013創建nuget包
術語'nuget'不被識別爲cmdlet,函數,腳本文件或可操作程序的名稱。檢查名稱的拼寫,或者如果包含路徑 ,請驗證路徑是否正確,然後重試。
我不知道我做錯了什麼。
可能使用管理器控制檯來創建一個包,或者我需要使用其他的東西。
請確保您有nuget.exe
%PATH%
某處。
注:我們使用Jenkins並需要EnvInject來獲取構建過程中可用的%PATH%變量。
編輯您的.csproj
文件,包括程序集的版本號的新宏變量,看Determine Assembly Version during a Post Build Event?
<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>
使用下面的生成後腳本部署新的軟件包,只要組裝版本已發生變化,新的需要.nupkg
;
IF "$(ConfigurationName)" == "Release" (
CD /D $(ProjectDir)
IF EXIST $(TargetName)[email protected](VersionNumber).nupkg EXIT
nuget pack $(ProjectPath) -Properties Configuration=$(ConfigurationName)
nuget push $(TargetName)[email protected](VersionNumber).nupkg -s http://mynugetserver
)
不知道我完全理解了這個問題,但是如果您在Visual Studio中使用包管理器控制檯,那麼您不需要在該窗口中使用nuget啓動命令。我通常使用軟件包管理器控制檯來安裝/更新當前解決方案的軟件包。例如:
nuget pack Library.csproj
見http://docs.nuget.org/docs/creating-packages/creating-and-publishing-a-package更多信息:
Install-Package Nunit
通常你通過調用正常的Windows命令行的NuGet的東西,如創建你的包。
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清單文件,但是這仍然不會創建實際的包。爲此,您必須回退到nuget.exe命令行工具,您可以從https://nuget.org/nuget.exe下載該工具。文檔可在NuGet Docs網站上找到。
現在有一個Nuget包瀏覽器可以讓你使用一個漂亮的小GUI來創建Nuget包。通過ClickOnce部署進行安裝。
https://npe.codeplex.com/downloads/get/clickOnce/NuGetPackageExplorer.application
這是老了,但我一直在尋找該信息。我將http://docs.nuget.org/create/creating-and-publishing-a-package的信息與我使用包管理器控制檯收集的信息相結合。
我用打以下方法創建從該Package Manager控制檯的規格和包裝:
cd <projectFolder>
../.nuget/nuget spec
Replace <projectFolder>的路徑到項目文件。
這將在項目文件夾中創建一個規範。 (.nuspec文件)
然後根據需要編輯這個新創建的文件。某些信息似乎是從AssemblyInfo文件中提取的,因此您可能還需要編輯該信息。
然後
../.nuget/nuget pack <projectFileName.csproj>
更換<projectFileName.csproj>您的項目文件名。 (我想這將是一個VB項目.vbproj。)
嘗試鏈接,但pack.nuspec不起作用。我們如何創建nuget包而不安裝其他程序並更改路徑變量? – MrFox
現在的問題是如何從NPC中修復包裝。答案不能是「不要使用NPC,使用Windows CLI」 – Suamere