Aracılığıyla paylaş


Eski sembol paketleri oluşturma (.symbols.nupkg)

Önemli

Sembol paketleri için önerilen yeni biçim .snupkg'dir. Bkz . Sembol paketleri oluşturma (.snupkg).
.symbols.nupkg hala desteklenir, ancak yalnızca uyumluluk nedeniyle desteklenir.

NuGet, nuget.org veya diğer kaynaklar için paket oluşturmaya ek olarak, sembol sunucularında yayımlanabilir ilişkili sembol paketleri oluşturmayı da destekler.

Eski sembol paketi oluşturma

Eski bir sembol paketi oluşturmak için şu kuralları izleyin:

  • Birincil paketi (kodunuzla) {identifier}.nupkg adlandırın ve dosyalar dışındaki .pdb tüm dosyalarınızı ekleyin.
  • Eski sembol paketini {identifier}.symbols.nupkg adlandırın ve derleme DLL'nizi, dosyalarınızı, .pdb XMLDOC dosyalarınızı, kaynak dosyalarınızı ekleyin (aşağıdaki bölümlere bakın).

Bir dosyadan .nuspec veya proje dosyasından -Symbols seçeneğiyle her iki paketi de oluşturabilirsiniz:

nuget pack MyPackage.nuspec -Symbols

nuget pack MyProject.csproj -Symbols

pack Mac OS X'te Mono 4.4.2 gerektiğini ve Linux sistemlerinde çalışmadığını unutmayın. Mac'te, dosyadaki .nuspec Windows yol adlarını Unix stili yollara da dönüştürmeniz gerekir.

Eski sembol paketi yapısı

Eski bir sembol paketi birden çok hedef çerçeveyi kitaplık paketiyle aynı şekilde hedefleyebilir, bu nedenle klasörün yapısı lib yalnızca DLL'nin yanı sıra dosyalar dahil olmak üzere .pdb birincil paketle tam olarak aynı olmalıdır.

Örneğin, .NET 4.0 ve Silverlight 4'i hedefleyen eski bir sembol paketi şu düzene sahip olabilir:

\lib
    \net40
        \MyAssembly.dll
        \MyAssembly.pdb
    \sl40
        \MyAssembly.dll
        \MyAssembly.pdb

Ardından kaynak dosyalar, kaynak deponuzun göreli yapısını izlemesi gereken adlı srcayrı bir özel klasöre yerleştirilir. Bunun nedeni PDB'lerin eşleşen DLL'yi derlemek için kullanılan kaynak dosyaların mutlak yollarını içermesi ve yayımlama işlemi sırasında bulunması gerekir. Temel yol (ortak yol ön eki) çıkarılabilir. Örneğin, şu dosyalardan oluşturulmuş bir kitaplığı göz önünde bulundurun:

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)

Klasörün dışında lib , eski bir sembol paketinin şu düzeni içermesi gerekir:

\src
    \Common
        \MyClass.cs
    \Full
        \Properties
            \AssemblyInfo.cs
    \Silverlight
        \Properties
            \AssemblyInfo.cs
        \MySilverlightExtensions.cs

Nuspec'teki dosyalara başvurma

Eski bir sembol paketi, önceki bölümde açıklandığı gibi bir klasör yapısından veya bildirimin bölümünde içeriğini files belirterek kurallarla oluşturulabilir. Örneğin, önceki bölümde gösterilen paketi oluşturmak için dosyasında aşağıdakileri .nuspec kullanın:

<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>

Ayrıca bkz.