Vytváření balíčků starších symbolů (.symbols.nupkg)
Důležité
Nový doporučený formát balíčků symbolů je .snupkg. Viz Vytváření balíčků symbolů (.snupkg).
.symbols.nupkg je stále podporován, ale pouze z důvodů kompatibility.
Kromě vytváření balíčků pro nuget.org nebo jiné zdroje podporuje NuGet také vytváření přidružených balíčků symbolů, které lze publikovat na servery symbolů.
Vytvoření staršího balíčku symbolů
Pokud chcete vytvořit starší balíček symbolů, postupujte podle těchto konvencí:
- Pojmenujte primární balíček (s kódem)
{identifier}.nupkg
a zahrňte všechny soubory kromě.pdb
souborů. - Pojmenujte starší balíček
{identifier}.symbols.nupkg
symbolů a zahrňte knihovnu DLL sestavení,.pdb
soubory, soubory XMLDOC, zdrojové soubory (viz následující části).
Oba balíčky můžete vytvořit pomocí -Symbols
možnosti, a to buď ze .nuspec
souboru, nebo ze souboru projektu:
nuget pack MyPackage.nuspec -Symbols
nuget pack MyProject.csproj -Symbols
Všimněte si, že pack
v systému Mac OS X vyžaduje Mono 4.4.2 a v systémech Linux nefunguje. Na Počítači Mac musíte také převést názvy cest systému Windows v .nuspec
souboru na cesty ve stylu Unixu.
Struktura balíčku starší verze symbolu
Starší balíček symbolů může cílit na více cílových architektur stejným způsobem jako balíček knihovny, takže struktura lib
složky by měla být úplně stejná jako primární balíček, pouze včetně .pdb
souborů společně s knihovnou DLL.
Například starší balíček symbolů, který cílí na .NET 4.0 a Silverlight 4, by měl toto rozložení:
\lib
\net40
\MyAssembly.dll
\MyAssembly.pdb
\sl40
\MyAssembly.dll
\MyAssembly.pdb
Zdrojové soubory se pak umístí do samostatné speciální složky s názvem src
, která musí následovat po relativní struktuře zdrojového úložiště. Důvodem je to, že soubory PDB obsahují absolutní cesty ke zdrojovým souborům používaným ke kompilaci odpovídající knihovny DLL a musí být nalezeny během procesu publikování. Základní cestu (předpona společné cesty) je možné odstranit. Představte si například knihovnu vytvořenou z těchto souborů:
C:\Projects
\MyProject
\Common
\MyClass.cs
\Full
\Properties
\AssemblyInfo.cs
\MyAssembly.csproj (producing \lib\net40\MyAssembly.dll)
\Silverlight
\Properties
\AssemblyInfo.cs
\MySilverlightExtensions.cs
\MyAssembly.csproj (producing \lib\sl4\MyAssembly.dll)
lib
Kromě složky by starší balíček symbolů potřeboval obsahovat toto rozložení:
\src
\Common
\MyClass.cs
\Full
\Properties
\AssemblyInfo.cs
\Silverlight
\Properties
\AssemblyInfo.cs
\MySilverlightExtensions.cs
Odkaz na soubory v nuspec
Starší balíček symbolů lze sestavit podle konvencí, ze struktury složek, jak je popsáno v předchozí části, nebo zadáním jeho obsahu v files
oddílu manifestu. Pokud chcete například sestavit balíček zobrazený v předchozí části, použijte v .nuspec
souboru následující:
<files>
<file src="Full\bin\Debug\*.dll" target="lib\net40" />
<file src="Full\bin\Debug\*.pdb" target="lib\net40" />
<file src="Silverlight\bin\Debug\*.dll" target="lib\sl40" />
<file src="Silverlight\bin\Debug\*.pdb" target="lib\sl40" />
<file src="**\*.cs" target="src" />
</files>
Viz také
- Vytváření balíčků symbolů (.snupkg) – nový doporučený formát pro balíčky symbolů