Menggunakan LibMan CLI dengan ASP.NET Core
Library Manager (LibMan) adalah alat akuisisi pustaka sisi klien yang ringan. LibMan mengunduh pustaka dan kerangka kerja populer dari sistem file atau dari jaringan pengiriman konten (CDN). CDN yang didukung mencakup CDNJS, jsDelivr, dan unpkg. Pustaka yang dipilih diambil dan ditempatkan di lokasi yang sesuai dalam proyek ASP.NET Core.
Prasyarat
Penginstalan
Perintah berikut menginstal LibMan:
dotnet tool install -g Microsoft.Web.LibraryManager.Cli
Catatan
Secara default arsitektur biner .NET yang akan diinstal mewakili arsitektur OS yang sedang berjalan. Untuk menentukan arsitektur OS yang berbeda, lihat penginstalan alat dotnet, opsi --arch. Untuk informasi selengkapnya, lihat Masalah GitHub dotnet/AspNetCore.Docs #29262.
Alat Global .NET Core diinstal dari paket NuGet Microsoft.Web.LibraryManager.Cli.
Penggunaan
libman
Untuk melihat versi LibMan yang diinstal:
libman --version
Untuk melihat perintah CLI yang tersedia:
libman --help
Perintah sebelumnya menampilkan output yang mirip dengan yang berikut ini:
1.0.163+g45474d37ed
Usage: libman [options] [command]
Options:
--help|-h Show help information
--version Show version information
Commands:
cache List or clean libman cache contents
clean Deletes all library files defined in libman.json from the project
init Create a new libman.json
install Add a library definition to the libman.json file, and download the
library to the specified location
restore Downloads all files from provider and saves them to specified
destination
uninstall Deletes all files for the specified library from their specified
destination, then removes the specified library definition from
libman.json
update Updates the specified library
Use "libman [command] --help" for more information about a command.
Bagian berikut menguraikan perintah CLI yang tersedia.
Menginisialisasi LibMan dalam proyek
Perintah libman init
membuat libman.json
file jika tidak ada. File dibuat dengan konten templat item default.
Sinopsis
libman init [-d|--default-destination] [-p|--default-provider] [--verbosity]
libman init [-h|--help]
Opsi
Opsi berikut tersedia untuk perintah libman init
:
-d|--default-destination <PATH>
Jalur relatif terhadap folder saat ini. File pustaka diinstal di lokasi ini jika tidak ada
destination
properti yang ditentukan untuk pustaka dilibman.json
. Nilai<PATH>
ditulis kedefaultDestination
properti .libman.json
-p|--default-provider <PROVIDER>
Penyedia yang akan digunakan jika tidak ada penyedia yang didefinisikan untuk pustaka tertentu. Nilai
<PROVIDER>
ditulis kedefaultProvider
properti .libman.json
Ganti<PROVIDER>
dengan salah satu nilai berikut:cdnjs
filesystem
jsdelivr
unpkg
-h|--help
Tampilkan informasi bantuan.
--verbosity <LEVEL>
Atur verbositas output. Ganti
<LEVEL>
dengan salah satu nilai berikut:quiet
normal
detailed
Contoh
Untuk membuat libman.json
file dalam proyek ASP.NET Core:
Navigasi ke akar proyek.
Jalankan perintah berikut:
libman init
Ketik nama penyedia default, atau tekan
Enter
untuk menggunakan penyedia CDNJS default. Nilai yang valid meliputi:cdnjs
filesystem
jsdelivr
unpkg
File libman.json
ditambahkan ke akar proyek dengan konten berikut:
{
"version": "1.0",
"defaultProvider": "cdnjs",
"libraries": []
}
Menambahkan file pustaka
Perintah libman install
mengunduh dan menginstal file pustaka ke dalam proyek. File libman.json
ditambahkan jika tidak ada. File libman.json
dimodifikasi untuk menyimpan detail konfigurasi untuk file pustaka.
Sinopsis
libman install <LIBRARY> [-d|--destination] [--files] [-p|--provider] [--verbosity]
libman install [-h|--help]
Argumen
LIBRARY
Nama pustaka yang akan diinstal. Nama ini dapat mencakup notasi nomor versi (misalnya, @1.2.0
).
Opsi
Opsi berikut tersedia untuk perintah libman install
:
-d|--destination <PATH>
Lokasi untuk menginstal pustaka. Jika tidak ditentukan, lokasi default digunakan. Jika tidak ada
defaultDestination
properti yang ditentukan dalamlibman.json
, opsi ini diperlukan.Catatan: Ada batasan jalur tujuan. Misalnya, ketika sumber paket memiliki struktur proyek lengkap dan bukan hanya folder distribusi, Anda tidak dapat menentukan pemindahan folder. Untuk informasi selengkapnya, lihat Masalah #407 dan Masalah #702
--files <FILE>
Tentukan nama file yang akan diinstal dari pustaka. Jika tidak ditentukan, semua file dari pustaka diinstal. Berikan satu
--files
opsi per file yang akan diinstal. Jalur relatif juga didukung. Sebagai contoh:--files dist/browser/signalr.js
.-p|--provider <PROVIDER>
Nama penyedia yang akan digunakan untuk akuisisi pustaka. Ganti
<PROVIDER>
dengan salah satu nilai berikut:cdnjs
filesystem
jsdelivr
unpkg
Jika tidak ditentukan,
defaultProvider
properti dilibman.json
digunakan. Jika tidak adadefaultProvider
properti yang ditentukan dalamlibman.json
, opsi ini diperlukan.
-h|--help
Tampilkan informasi bantuan.
--verbosity <LEVEL>
Atur verbositas output. Ganti
<LEVEL>
dengan salah satu nilai berikut:quiet
normal
detailed
Contoh
Pertimbangkan file libman.json
berikut:
{
"version": "1.0",
"defaultProvider": "cdnjs",
"libraries": []
}
Untuk menginstal file jQuery versi 3.2.1 jquery.min.js
ke folder wwwroot/scripts/jquery menggunakan penyedia CDNJS :
libman install jquery@3.2.1 --provider cdnjs --destination wwwroot/scripts/jquery --files jquery.min.js
File libman.json
menyerupan berikut ini:
{
"version": "1.0",
"defaultProvider": "cdnjs",
"libraries": [
{
"library": "jquery@3.2.1",
"destination": "wwwroot/scripts/jquery",
"files": [
"jquery.min.js"
]
}
]
}
Untuk menginstal calendar.js
file dan calendar.css
dari C:\temp\contosoCalendar\ menggunakan penyedia sistem file:
libman install C:\temp\contosoCalendar\ --provider filesystem --files calendar.js --files calendar.css
Perintah berikut muncul karena dua alasan:
- File
libman.json
tidak berisidefaultDestination
properti. - Perintah
libman install
tidak berisi-d|--destination
opsi .
Setelah menerima tujuan default, libman.json
file menyerupan berikut ini:
{
"version": "1.0",
"defaultProvider": "cdnjs",
"libraries": [
{
"library": "jquery@3.2.1",
"destination": "wwwroot/scripts/jquery",
"files": [
"jquery.min.js"
]
},
{
"library": "C:\\temp\\contosoCalendar\\",
"provider": "filesystem",
"destination": "wwwroot/lib/contosoCalendar",
"files": [
"calendar.js",
"calendar.css"
]
}
]
}
Memulihkan file pustaka
Perintah libman restore
menginstal file pustaka yang ditentukan dalam libman.json
. Aturan berikut ini akan berlaku:
- Jika tidak ada
libman.json
file di akar proyek, kesalahan akan ditampilkan. - Jika pustaka menentukan penyedia,
defaultProvider
properti dilibman.json
diabaikan. - Jika pustaka menentukan tujuan,
defaultDestination
properti dilibman.json
diabaikan.
Sinopsis
libman restore [--verbosity]
libman restore [-h|--help]
Opsi
Opsi berikut tersedia untuk perintah libman restore
:
-h|--help
Tampilkan informasi bantuan.
--verbosity <LEVEL>
Atur verbositas output. Ganti
<LEVEL>
dengan salah satu nilai berikut:quiet
normal
detailed
Contoh
Untuk memulihkan file pustaka yang ditentukan dalam libman.json
:
libman restore
Menghapus file pustaka
Perintah libman clean
menghapus file pustaka yang sebelumnya dipulihkan melalui LibMan. Folder yang menjadi kosong setelah operasi ini dihapus. Konfigurasi terkait file pustaka di libraries
properti libman.json
tidak dihapus.
Sinopsis
libman clean [--verbosity]
libman clean [-h|--help]
Opsi
Opsi berikut tersedia untuk perintah libman clean
:
-h|--help
Tampilkan informasi bantuan.
--verbosity <LEVEL>
Atur verbositas output. Ganti
<LEVEL>
dengan salah satu nilai berikut:quiet
normal
detailed
Contoh
Untuk menghapus file pustaka yang diinstal melalui LibMan:
libman clean
Menghapus instalasi file pustaka
Perintah libman uninstall
:
- Menghapus semua file yang terkait dengan pustaka yang ditentukan dari tujuan di
libman.json
. - Menghapus konfigurasi pustaka terkait dari
libman.json
.
Kesalahan terjadi ketika:
- Tidak
libman.json
ada file di akar proyek. - Pustaka yang ditentukan tidak ada.
Jika lebih dari satu pustaka dengan nama yang sama diinstal, Anda akan diminta untuk memilihnya.
Sinopsis
libman uninstall <LIBRARY> [--verbosity]
libman uninstall [-h|--help]
Argumen
LIBRARY
Nama pustaka yang akan dilepas instalannya. Nama ini dapat mencakup notasi nomor versi (misalnya, @1.2.0
).
Opsi
Opsi berikut tersedia untuk perintah libman uninstall
:
-h|--help
Tampilkan informasi bantuan.
--verbosity <LEVEL>
Atur verbositas output. Ganti
<LEVEL>
dengan salah satu nilai berikut:quiet
normal
detailed
Contoh
Pertimbangkan file libman.json
berikut:
{
"version": "1.0",
"defaultProvider": "cdnjs",
"libraries": [
{
"library": "jquery@3.3.1",
"files": [
"jquery.min.js",
"jquery.js",
"jquery.min.map"
],
"destination": "wwwroot/lib/jquery/"
},
{
"provider": "unpkg",
"library": "bootstrap@4.1.3",
"destination": "wwwroot/lib/bootstrap/"
},
{
"provider": "filesystem",
"library": "C:\\temp\\lodash\\",
"files": [
"lodash.js",
"lodash.min.js"
],
"destination": "wwwroot/lib/lodash/"
}
]
}
Untuk menghapus instalan jQuery, salah satu perintah berikut berhasil:
libman uninstall jquery
libman uninstall jquery@3.3.1
Untuk menghapus instalasi file Lodash yang diinstal melalui
filesystem
penyedia:libman uninstall C:\temp\lodash\
Memperbarui versi pustaka
libman update
Perintah memperbarui pustaka yang diinstal melalui LibMan ke versi yang ditentukan.
Kesalahan terjadi ketika:
- Tidak
libman.json
ada file di akar proyek. - Pustaka yang ditentukan tidak ada.
Jika lebih dari satu pustaka dengan nama yang sama diinstal, Anda akan diminta untuk memilihnya.
Sinopsis
libman update <LIBRARY> [-pre] [--to] [--verbosity]
libman update [-h|--help]
Argumen
LIBRARY
Nama pustaka yang akan diperbarui.
Opsi
Opsi berikut tersedia untuk perintah libman update
:
-pre
Dapatkan versi prarilis terbaru pustaka.
--to <VERSION>
Dapatkan versi pustaka tertentu.
-h|--help
Tampilkan informasi bantuan.
--verbosity <LEVEL>
Atur verbositas output. Ganti
<LEVEL>
dengan salah satu nilai berikut:quiet
normal
detailed
Contoh
Untuk memperbarui jQuery ke versi terbaru:
libman update jquery
Untuk memperbarui jQuery ke versi 3.3.1:
libman update jquery --to 3.3.1
Untuk memperbarui jQuery ke versi prarilis terbaru:
libman update jquery -pre
Mengelola cache pustaka
Perintah libman cache
mengelola cache pustaka LibMan. Penyedia filesystem
tidak menggunakan cache pustaka.
Sinopsis
libman cache clean [<PROVIDER>] [--verbosity]
libman cache list [--files] [--libraries] [--verbosity]
libman cache [-h|--help]
Argumen
PROVIDER
Hanya digunakan dengan clean
perintah . Menentukan cache penyedia yang akan dibersihkan. Nilai yang valid meliputi:
cdnjs
filesystem
jsdelivr
unpkg
Opsi
Opsi berikut tersedia untuk perintah libman cache
:
--files
Cantumkan nama file yang di-cache.
--libraries
Cantumkan nama pustaka yang di-cache.
-h|--help
Tampilkan informasi bantuan.
--verbosity <LEVEL>
Atur verbositas output. Ganti
<LEVEL>
dengan salah satu nilai berikut:quiet
normal
detailed
Contoh
Untuk melihat nama pustaka yang di-cache per penyedia, gunakan salah satu perintah berikut:
libman cache list
libman cache list --libraries
Output yang mirip dengan berikut ini ditampilkan:
Cache contents: --------------- unpkg: knockout react vue cdnjs: font-awesome jquery knockout lodash.js react
Untuk melihat nama file pustaka yang di-cache per penyedia:
libman cache list --files
Output yang mirip dengan berikut ini ditampilkan:
Cache contents: --------------- unpkg: knockout: <list omitted for brevity> react: <list omitted for brevity> vue: <list omitted for brevity> cdnjs: font-awesome metadata.json jquery metadata.json 3.2.1\core.js 3.2.1\jquery.js 3.2.1\jquery.min.js 3.2.1\jquery.min.map 3.2.1\jquery.slim.js 3.2.1\jquery.slim.min.js 3.2.1\jquery.slim.min.map 3.3.1\core.js 3.3.1\jquery.js 3.3.1\jquery.min.js 3.3.1\jquery.min.map 3.3.1\jquery.slim.js 3.3.1\jquery.slim.min.js 3.3.1\jquery.slim.min.map knockout metadata.json 3.4.2\knockout-debug.js 3.4.2\knockout-min.js lodash.js metadata.json 4.17.10\lodash.js 4.17.10\lodash.min.js react metadata.json
Perhatikan output sebelumnya menunjukkan bahwa jQuery versi 3.2.1 dan 3.3.1 di-cache di bawah penyedia CDNJS .
Untuk mengosongkan cache pustaka untuk penyedia CDNJS :
libman cache clean cdnjs
Setelah mengosongkan cache penyedia CDNJS ,
libman cache list
perintah menampilkan hal berikut:Cache contents: --------------- unpkg: knockout react vue cdnjs: (empty)
Untuk mengosongkan cache untuk semua penyedia yang didukung:
libman cache clean
Setelah mengosongkan semua cache penyedia,
libman cache list
perintah menampilkan yang berikut ini:Cache contents: --------------- unpkg: (empty) cdnjs: (empty)
Sumber daya tambahan
ASP.NET Core
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk