Tworzenie starszych pakietów symboli (.symbols.nupkg)
Ważne
Nowy zalecany format pakietów symboli to .snupkg. Zobacz Tworzenie pakietów symboli (.snupkg).
Plik .symbols.nupkg jest nadal obsługiwany, ale tylko ze względów zgodności.
Oprócz tworzenia pakietów dla nuget.org lub innych źródeł nuGet obsługuje również tworzenie skojarzonych pakietów symboli, które można publikować na serwerach symboli.
Tworzenie starszego pakietu symboli
Aby utworzyć starszy pakiet symboli, wykonaj następujące konwencje:
- Nazwij pakiet podstawowy (przy użyciu kodu)
{identifier}.nupkg
i dołącz wszystkie pliki z wyjątkiem.pdb
plików. - Nazwij starszy pakiet
{identifier}.symbols.nupkg
symboli i dołącz bibliotekę DLL zestawu,.pdb
pliki, pliki XMLDOC, pliki źródłowe (zobacz poniższe sekcje).
Możesz utworzyć oba pakiety z -Symbols
opcją .nuspec
na podstawie pliku lub pliku projektu:
nuget pack MyPackage.nuspec -Symbols
nuget pack MyProject.csproj -Symbols
Należy pamiętać, że pack
program Mono 4.4.2 w systemie Mac OS X nie działa w systemach Linux. Na komputerze Mac należy również przekonwertować nazwy ścieżek systemu Windows w .nuspec
pliku na ścieżki stylu systemu Unix.
Starsza struktura pakietu symboli
Starszy pakiet symboli może być przeznaczony dla wielu platform docelowych w taki sam sposób, jak pakiet biblioteki, więc struktura lib
folderu powinna być dokładnie taka sama jak pakiet podstawowy, w tym .pdb
tylko pliki obok biblioteki DLL.
Na przykład starszy pakiet symboli przeznaczony dla platformy .NET 4.0 i Silverlight 4 będzie miał następujący układ:
\lib
\net40
\MyAssembly.dll
\MyAssembly.pdb
\sl40
\MyAssembly.dll
\MyAssembly.pdb
Pliki źródłowe są następnie umieszczane w oddzielnym folderze specjalnym o nazwie src
, który musi być zgodny ze względną strukturą repozytorium źródłowego. Jest to spowodowane tym, że pliki PDB zawierają ścieżki bezwzględne do plików źródłowych używanych do skompilowania zgodnej biblioteki DLL i muszą zostać znalezione podczas procesu publikowania. Ścieżkę podstawową (wspólny prefiks ścieżki) można usunąć. Rozważmy na przykład bibliotekę utworzoną na podstawie następujących plików:
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
Oprócz folderu starszy pakiet symboli musi zawierać ten układ:
\src
\Common
\MyClass.cs
\Full
\Properties
\AssemblyInfo.cs
\Silverlight
\Properties
\AssemblyInfo.cs
\MySilverlightExtensions.cs
Odwoływania się do plików w narzędziu nuspec
Starszy pakiet symboli może być kompilowany zgodnie z konwencjami, ze struktury folderów zgodnie z opisem w poprzedniej sekcji lub przez określenie jego zawartości w files
sekcji manifestu. Aby na przykład skompilować pakiet pokazany w poprzedniej sekcji, użyj następującego polecenia .nuspec
w pliku :
<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>
Zobacz też
- Tworzenie pakietów symboli (snupkg) — nowy zalecany format pakietów symboli