Tworzenie paczek NuGet

W skrócie opisze jak tworzyć paczki nuget bezpośrednio z projektu VS.

Wszystkie polecenia będziemy wykonywać narzędziem nuget.exe

Tworzenie paczki release

W folderze z projektem (plik .csporj) uruchamiamy

nuget spec

Po uruchomieniu zostanie utworzony specjalny plik .nuspec o takiej samej nazwie jak nazwa projektu. Plik ten zawiera meta informację na temat paczki.

[xml]
<package >
<metadata>
<id>$id$</id>
<version>$version$</version>
<title>$title$</title>
<authors>$author$</authors>
<owners>$author$</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>$description$</description>
<releaseNotes>My project release notes</releaseNotes>
<copyright>Copyright 2016</copyright>
<tags>tag1 tag2</tags>
</metadata>
</package>
[/xml]

Dane w formacie $xyz$ oznaczają że te informacje są pobierane z pliku dll.

Gdy plik nuspec mamy już gotowy to budujemy projekt i tworzymy paczkę uruchamiając polecenie:

nuget pack MyProject.csproj

Jeśli chcemy dodać zależne biblioteki to dodajemy parametr IncludeReferencedProjects

nuget pack MyProject.csproj -IncludeReferencedProjects -Prop Configuration=Release

Jeśli paczka się utworzy to wysyłamy ją na serwer poleceniem:

nuget push MyProject.1.0.0.nupkg -s http://yourdomain.com/nuget API_KEY

Tworzenie paczki prerelease

Jeśłi paczkę tworzymy z pliku projektu (.csproj lub .vbproj) to utworzenie paczki prelese ogranicza się do dodania atrybutu AssemblyInformationalVersionAttribute i określeniu wersji:

[assembly: AssemblyInformationalVersion("1.0.1-alpha")]

NuGet użyje tej wartości zamiast danych z AssemblyVersion.

Więcej informacji