Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk: pembuatan paket • Versi yang didukung: 2.7+
Membuat paket NuGet berdasarkan file .nuspec atau proyek yang ditentukan. Perintah dotnet pack (lihat perintah dotnet) dan msbuild -t:pack (lihat target MSBuild) dapat digunakan sebagai alternatif.
Penting
Gunakan dotnet pack atau msbuild -t:pack untuk proyek berbasis PackageReference . Dimulai dengan NuGet versi 6.5+, perintah paket akan kesalahan saat mencoba mengemas jenis proyek ini. Versi sebelumnya akan mencoba untuk mengemas, tetapi paket yang dihasilkan mungkin tidak benar.
Di bawah Mono, membuat paket dari file proyek tidak didukung. Anda juga perlu menyesuaikan jalur non-lokal dalam file ke .nuspec jalur gaya Unix, karena nuget.exe tidak mengonversi nama jalur Windows itu sendiri.
Penggunaan
nuget pack <nuspecPath | projectPath> [options] [-Properties ...]
di mana <nuspecPath> dan <projectPath> menentukan .nuspec file atau proyek, masing-masing.
Opsi
-BasePathMengatur jalur dasar file yang ditentukan dalam file .nuspec .
-BuildMenentukan bahwa proyek harus dibangun sebelum membangun paket.
-ConfigFileFile konfigurasi NuGet yang akan diterapkan. Jika tidak ditentukan,
%AppData%\NuGet\NuGet.Config(Windows), atau atau~/.nuget/NuGet/NuGet.Config~/.config/NuGet/NuGet.Config(Mac/Linux) digunakan.-ExcludeMenentukan satu atau beberapa pola kartubebas untuk dikecualikan saat membuat paket. Untuk menentukan lebih dari satu pola, ulangi bendera -Exclude. Contohnya di bawah.
-ExcludeEmptyDirectoriesMencegah penyertaan direktori kosong saat membangun paket.
-ForceEnglishOutput(3.5+) Memaksa nuget.exe untuk berjalan menggunakan budaya berbasis bahasa Inggris yang invarian.
-?|-helpMenampilkan informasi bantuan untuk perintah.
-IncludeReferencedProjectsMenunjukkan bahwa paket bawaan harus menyertakan proyek yang dirujuk baik sebagai dependensi atau sebagai bagian dari paket. Jika proyek yang dirujuk memiliki file terkait yang memiliki nama yang sama dengan
.nuspecproyek, proyek yang dirujuk tersebut ditambahkan sebagai dependensi. Jika tidak, proyek yang dirujuk ditambahkan sebagai bagian dari paket.-InstallPackageToOutputPathTentukan apakah perintah harus menyiapkan direktori output paket untuk mendukung berbagi sebagai umpan.
-MinClientVersionAtur atribut minClientVersion untuk paket yang dibuat. Nilai ini akan menggantikan nilai atribut minClientVersion yang ada (jika ada) dalam
.nuspecfile.-MSBuildPath(4.0+) Menentukan jalur MSBuild untuk digunakan dengan perintah , lebih diutamakan daripada
-MSBuildVersion.-MSBuildVersion(3.2+) Menentukan versi MSBuild yang akan digunakan dengan perintah ini. Nilai yang didukung adalah 4, 12, 14, 15.1, 15.3, 15.4, 15.5, 15.6, 15.7, 15.8, 15.9. Secara default MSBuild di jalur Anda dipilih, jika tidak, MSBuild default ke versi MSBuild tertinggi yang diinstal.
-NoDefaultExcludesMencegah pengecualian default file paket NuGet dan file dan folder yang dimulai dengan titik, seperti
.svndan.gitignore.-NonInteractiveMenekan permintaan untuk input atau konfirmasi pengguna.
-NoPackageAnalysisMenentukan bahwa paket tidak boleh menjalankan analisis paket setelah membuat paket.
-OutputDirectoryMenentukan folder tempat paket yang dibuat disimpan. Jika tidak ada folder yang ditentukan, folder saat ini akan digunakan.
-OutputFileNamesWithoutVersionTentukan apakah perintah harus menyiapkan nama output paket tanpa versi .
-PackagesDirectoryMenentukan folder paket.
-p|-PropertiesAkan muncul terakhir pada baris perintah setelah opsi lain. Menentukan daftar properti yang mengambil alih nilai dalam file proyek; lihat Properti Proyek MSBuild umum untuk nama properti. Argumen Properti di sini adalah daftar pasangan token=value, dipisahkan oleh titik koma, di mana setiap kemunculan
$token$.nuspecdalam file akan diganti dengan nilai yang diberikan. Nilai dapat berupa string dalam tanda kutip. Perhatikan bahwa untuk properti "Konfigurasi", defaultnya adalah "Debug". Untuk mengubah ke konfigurasi Rilis, gunakan-Properties Configuration=Release. Secara umum, Properti harus sama dengan yang digunakan selama build proyek yang sesuai, untuk menghindari perilaku yang berpotensi aneh.-SolutionDirectoryMenentukan direktori solusi.
-Suffix(3.4.4+) Menambahkan akhiran ke nomor versi yang dihasilkan secara internal, biasanya digunakan untuk menambahkan build atau pengidentifikasi pra-rilis lainnya. Misalnya, menggunakan
-suffix nightlyakan membuat paket dengan nomor versi seperti1.2.3-nightly. Akhiran harus dimulai dengan huruf untuk menghindari peringatan, kesalahan, dan potensi ketidakcocokan dengan versi NuGet dan Manajer Paket NuGet yang berbeda.-SymbolPackageFormatSaat membuat paket simbol, memungkinkan untuk memilih antara
snupkgformat dansymbols.nupkg.-SymbolsMenentukan bahwa paket berisi sumber dan simbol. Ketika digunakan dengan
.nuspecfile, ini membuat file paket NuGet reguler dan paket simbol yang sesuai. Secara default membuat paket simbol warisan. Format baru yang direkomendasikan untuk paket simbol adalah .snupkg. Lihat Membuat paket simbol (.snupkg).-ToolMenentukan bahwa file output proyek harus ditempatkan di folder dalam
toolspaket.-Verbosity [normal|quiet|detailed]Menentukan jumlah detail yang ditampilkan dalam output:
normal(default),quiet, ataudetailed.-VersionMengambil alih nomor versi dari
.nuspecfile.
Lihat juga Variabel lingkungan
Tidak termasuk dependensi pengembangan
Beberapa paket NuGet berguna sebagai dependensi pengembangan, yang membantu Anda menulis pustaka Anda sendiri, tetapi belum tentu diperlukan sebagai dependensi paket aktual.
Perintah pack akan mengabaikan package entri di packages.config yang memiliki atribut yang developmentDependency diatur ke true. Entri ini tidak akan disertakan sebagai dependensi dalam paket yang dibuat.
Misalnya, pertimbangkan file berikut packages.config dalam proyek sumber:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="jQuery" version="1.5.2" />
<package id="netfx-Guard" version="1.3.3.2" developmentDependency="true" />
<package id="microsoft-web-helpers" version="1.15" />
</packages>
Untuk proyek ini, paket yang dibuat oleh nuget pack akan memiliki dependensi pada jQuery dan microsoft-web-helpers tetapi tidak netfx-Guard.
Menekan peringatan paket
Meskipun disarankan agar Anda menyelesaikan semua peringatan NuGet selama operasi paket Anda, dalam situasi tertentu menekannya dijaga.
Anda dapat mencapainya dengan cara berikut:
nuget.exe pack package.nuspec -Properties NoWarn=NU5104
Contoh
nuget pack
nuget pack foo.nuspec
nuget pack foo.csproj
nuget pack foo.csproj -Properties Configuration=Release
nuget pack foo.csproj -Build -Symbols -Properties owners=janedoe,xiaop;version="1.0.5"
# Create a package from project foo.csproj, using MSBuild version 12 to build the project
nuget pack foo.csproj -Build -Symbols -MSBuildVersion 12 -Properties owners=janedoe,xiaop;version="1.0.5"
# Create a package from project foo.nuspec and the corresponding symbol package using the new recommended format .snupkg
nuget pack foo.nuspec -Symbols -SymbolPackageFormat snupkg
nuget pack foo.nuspec -Version 2.1.0
nuget pack foo.nuspec -Version 1.0.0 -MinClientVersion 2.5
nuget pack Package.nuspec -exclude "*.exe" -exclude "*.bat"
Catatan
pack Perintah untuk proyek gaya SDK tidak didukung, gunakandotnet pack, atau msbuild -t:pack untuk mengemas proyek-proyek tersebut sebagai gantinya.