LibMan CLI'yi ASP.NET Core ile kullanma
Kitaplık Yöneticisi (LibMan), basit, istemci tarafı kitaplık alma aracıdır. LibMan, popüler kitaplıkları ve çerçeveleri dosya sisteminden veya bir içerik teslim ağından (CDN) indirir. Desteklenen CDN'ler CDNJS, jsDelivr ve unpkg içerir. Seçilen kitaplık dosyaları getirilir ve ASP.NET Core projesi içinde uygun konuma yerleştirilir.
Önkoşullar
Yükleme
Aşağıdaki komut LibMan'ı yükler:
dotnet tool install -g Microsoft.Web.LibraryManager.Cli
Not
Varsayılan olarak yüklenecek .NET ikili dosyalarının mimarisi şu anda çalışan işletim sistemi mimarisini temsil eder. Farklı bir işletim sistemi mimarisi belirtmek için bkz . dotnet tool install, --arch option. Daha fazla bilgi için bkz. GitHub sorunu dotnet/AspNetCore.Docs #29262.
Microsoft.Web.LibraryManager.Cli NuGet paketinden bir .NET Core Genel Aracı yüklenir.
Kullanım
libman
Yüklü LibMan sürümünü görüntülemek için:
libman --version
Kullanılabilir CLI komutlarını görüntülemek için:
libman --help
Yukarıdaki komut çıktıyı aşağıdakine benzer şekilde görüntüler:
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.
Aşağıdaki bölümlerde, kullanılabilir CLI komutları özetlenmiştir.
Projede LibMan'ı başlatma
Komutu libman init
, yoksa bir libman.json
dosya oluşturur. Dosya, varsayılan öğe şablonu içeriğiyle oluşturulur.
Özet
libman init [-d|--default-destination] [-p|--default-provider] [--verbosity]
libman init [-h|--help]
Seçenekler
libman init
komutu için aşağıdaki seçenekler kullanılabilir:
-d|--default-destination <PATH>
Geçerli klasöre göre bir yol. içindeki bir kitaplık için hiçbir
destination
özellik tanımlanmamışsa kitaplıklibman.json
dosyaları bu konuma yüklenir.<PATH>
değeri özelliğinedefaultDestination
libman.json
yazılır.-p|--default-provider <PROVIDER>
Belirli bir kitaplık için sağlayıcı tanımlanmadıysa kullanılacak sağlayıcı.
<PROVIDER>
değeri özelliğinedefaultProvider
libman.json
yazılır. değerini aşağıdaki değerlerden biriyle değiştirin<PROVIDER>
:cdnjs
filesystem
jsdelivr
unpkg
-h|--help
Yardım bilgilerini gösterin.
--verbosity <LEVEL>
Çıkışın ayrıntı düzeyini ayarlayın. değerini aşağıdaki değerlerden biriyle değiştirin
<LEVEL>
:quiet
normal
detailed
Örnekler
ASP.NET Core projesinde dosya oluşturmak libman.json
için:
Proje köküne gidin.
Şu komutu çalıştırın:
libman init
Varsayılan sağlayıcının adını yazın veya varsayılan CDNJS sağlayıcısını kullanmak için basın
Enter
. Geçerli değerler şunlardır:cdnjs
filesystem
jsdelivr
unpkg
libman.json
Proje köküne aşağıdaki içeriğe sahip bir dosya eklenir:
{
"version": "1.0",
"defaultProvider": "cdnjs",
"libraries": []
}
Kitaplık dosyaları ekleme
komutu, libman install
kitaplık dosyalarını projeye indirir ve yükler. Yoksa libman.json
bir dosya eklenir. Dosya libman.json
, kitaplık dosyalarının yapılandırma ayrıntılarını depolamak üzere değiştirilir.
Özet
libman install <LIBRARY> [-d|--destination] [--files] [-p|--provider] [--verbosity]
libman install [-h|--help]
Bağımsız değişkenler
LIBRARY
Yüklenecek kitaplığın adı. Bu ad sürüm numarası gösterimini içerebilir (örneğin, @1.2.0
).
Seçenekler
libman install
komutu için aşağıdaki seçenekler kullanılabilir:
-d|--destination <PATH>
Kitaplığın yükleneceği konum. Belirtilmezse, varsayılan konum kullanılır. içinde
libman.json
hiçbirdefaultDestination
özellik belirtilmezse bu seçenek gereklidir.Not: Hedef yolda sınırlamalar vardır. Örneğin, paket kaynağı yalnızca dağıtım klasörünü değil tam bir proje yapısına sahip olduğunda, bir klasörün taşınmasını belirtemezsiniz. Daha fazla bilgi için bkz . Sorun #407 ve Sorun #702
--files <FILE>
Kitaplıktan yüklenecek dosyanın adını belirtin. Belirtilmezse, kitaplıktan tüm dosyalar yüklenir. Yüklenecek dosya başına bir
--files
seçenek belirtin. Göreli yollar da desteklenir. Örneğin:--files dist/browser/signalr.js
.-p|--provider <PROVIDER>
Kitaplık alımı için kullanılacak sağlayıcının adı. değerini aşağıdaki değerlerden biriyle değiştirin
<PROVIDER>
:cdnjs
filesystem
jsdelivr
unpkg
Belirtilmezse,
defaultProvider
içindekilibman.json
özelliği kullanılır. içindelibman.json
hiçbirdefaultProvider
özellik belirtilmezse bu seçenek gereklidir.
-h|--help
Yardım bilgilerini gösterin.
--verbosity <LEVEL>
Çıkışın ayrıntı düzeyini ayarlayın. değerini aşağıdaki değerlerden biriyle değiştirin
<LEVEL>
:quiet
normal
detailed
Örnekler
Aşağıdaki libman.json
dosyasını göz önünde bulundurun:
{
"version": "1.0",
"defaultProvider": "cdnjs",
"libraries": []
}
CDNJS sağlayıcısını kullanarak jQuery sürüm 3.2.1 jquery.min.js
dosyasını wwwroot/scripts/jquery klasörüne yüklemek için:
libman install jquery@3.2.1 --provider cdnjs --destination wwwroot/scripts/jquery --files jquery.min.js
Dosya libman.json
aşağıdakine benzer:
{
"version": "1.0",
"defaultProvider": "cdnjs",
"libraries": [
{
"library": "jquery@3.2.1",
"destination": "wwwroot/scripts/jquery",
"files": [
"jquery.min.js"
]
}
]
}
dosya sistemi sağlayıcısını calendar.js
kullanarak C:\temp\contosoCalendar\ konumundan ve calendar.css
dosyalarını yüklemek için:
libman install C:\temp\contosoCalendar\ --provider filesystem --files calendar.js --files calendar.css
Aşağıdaki istem iki nedenden dolayı görüntülenir:
- Dosya
libman.json
birdefaultDestination
özellik içermiyor. - Komut seçeneği
libman install
içermez-d|--destination
.
Varsayılan hedef libman.json
kabul edildikten sonra dosya aşağıdakine benzer:
{
"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"
]
}
]
}
Kitaplık dosyalarını geri yükleme
libman restore
komutu, içinde libman.json
tanımlanan kitaplık dosyalarını yükler. Geçerli olan kurallar şunlardır:
- Proje kökünde dosya yoksa
libman.json
bir hata döndürülür. - Bir kitaplık bir sağlayıcı belirtiyorsa içindeki
defaultProvider
özelliğilibman.json
yoksayılır. - Bir kitaplık bir hedef belirtirse içindeki
defaultDestination
özelliğilibman.json
yoksayılır.
Özet
libman restore [--verbosity]
libman restore [-h|--help]
Seçenekler
libman restore
komutu için aşağıdaki seçenekler kullanılabilir:
-h|--help
Yardım bilgilerini gösterin.
--verbosity <LEVEL>
Çıkışın ayrıntı düzeyini ayarlayın. değerini aşağıdaki değerlerden biriyle değiştirin
<LEVEL>
:quiet
normal
detailed
Örnekler
içinde libman.json
tanımlanan kitaplık dosyalarını geri yüklemek için:
libman restore
Kitaplık dosyalarını silme
komutu, libman clean
daha önce LibMan aracılığıyla geri yüklenen kitaplık dosyalarını siler. Bu işlemden sonra boş duruma gelen klasörler silinir. özelliğindeki kitaplık dosyalarının libraries
libman.json
ilişkili yapılandırmaları kaldırılmaz.
Özet
libman clean [--verbosity]
libman clean [-h|--help]
Seçenekler
libman clean
komutu için aşağıdaki seçenekler kullanılabilir:
-h|--help
Yardım bilgilerini gösterin.
--verbosity <LEVEL>
Çıkışın ayrıntı düzeyini ayarlayın. değerini aşağıdaki değerlerden biriyle değiştirin
<LEVEL>
:quiet
normal
detailed
Örnekler
LibMan aracılığıyla yüklenen kitaplık dosyalarını silmek için:
libman clean
Kitaplık dosyalarını kaldırma
Komut libman uninstall
:
- belirtilen kitaplıkla ilişkili tüm dosyaları içindeki
libman.json
hedeften siler. - İlişkili kitaplık yapılandırmasını 'den
libman.json
kaldırır.
Şu durumlarda bir hata oluşur:
- Proje kökünde dosya yok
libman.json
. - Belirtilen kitaplık yok.
Aynı ada sahip birden fazla kitaplık yüklüyse, bir kitaplık seçmeniz istenir.
Özet
libman uninstall <LIBRARY> [--verbosity]
libman uninstall [-h|--help]
Bağımsız değişkenler
LIBRARY
Kaldıracak kitaplığın adı. Bu ad sürüm numarası gösterimini içerebilir (örneğin, @1.2.0
).
Seçenekler
libman uninstall
komutu için aşağıdaki seçenekler kullanılabilir:
-h|--help
Yardım bilgilerini gösterin.
--verbosity <LEVEL>
Çıkışın ayrıntı düzeyini ayarlayın. değerini aşağıdaki değerlerden biriyle değiştirin
<LEVEL>
:quiet
normal
detailed
Örnekler
Aşağıdaki libman.json
dosyasını göz önünde bulundurun:
{
"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/"
}
]
}
jQuery'yi kaldırmak için aşağıdaki komutlardan biri başarılı olur:
libman uninstall jquery
libman uninstall jquery@3.3.1
Sağlayıcı aracılığıyla
filesystem
yüklenen Lodash dosyalarını kaldırmak için:libman uninstall C:\temp\lodash\
Kitaplık sürümünü güncelleştirme
Komutu, libman update
LibMan aracılığıyla yüklenen bir kitaplığı belirtilen sürüme güncelleştirir.
Şu durumlarda bir hata oluşur:
- Proje kökünde dosya yok
libman.json
. - Belirtilen kitaplık yok.
Aynı ada sahip birden fazla kitaplık yüklüyse, bir kitaplık seçmeniz istenir.
Özet
libman update <LIBRARY> [-pre] [--to] [--verbosity]
libman update [-h|--help]
Bağımsız değişkenler
LIBRARY
Güncelleştirilecek kitaplığın adı.
Seçenekler
libman update
komutu için aşağıdaki seçenekler kullanılabilir:
-pre
Kitaplığın en son yayın öncesi sürümünü edinin.
--to <VERSION>
Kitaplığın belirli bir sürümünü edinin.
-h|--help
Yardım bilgilerini gösterin.
--verbosity <LEVEL>
Çıkışın ayrıntı düzeyini ayarlayın. değerini aşağıdaki değerlerden biriyle değiştirin
<LEVEL>
:quiet
normal
detailed
Örnekler
jQuery'yi en son sürüme güncelleştirmek için:
libman update jquery
jQuery'yi sürüm 3.3.1'e güncelleştirmek için:
libman update jquery --to 3.3.1
jQuery'yi en son yayın öncesi sürüme güncelleştirmek için:
libman update jquery -pre
Kitaplık önbelleğini yönetme
libman cache
Komutu LibMan kitaplık önbelleğini yönetir. Sağlayıcı filesystem
kitaplık önbelleğini kullanmaz.
Özet
libman cache clean [<PROVIDER>] [--verbosity]
libman cache list [--files] [--libraries] [--verbosity]
libman cache [-h|--help]
Bağımsız değişkenler
PROVIDER
Yalnızca komutuyla clean
kullanılır. Temizecek sağlayıcı önbelleğini belirtir. Geçerli değerler şunlardır:
cdnjs
filesystem
jsdelivr
unpkg
Seçenekler
libman cache
komutu için aşağıdaki seçenekler kullanılabilir:
--files
Önbelleğe alınan dosyaların adlarını listeleyin.
--libraries
Önbelleğe alınan kitaplıkların adlarını listeleyin.
-h|--help
Yardım bilgilerini gösterin.
--verbosity <LEVEL>
Çıkışın ayrıntı düzeyini ayarlayın. değerini aşağıdaki değerlerden biriyle değiştirin
<LEVEL>
:quiet
normal
detailed
Örnekler
Sağlayıcı başına önbelleğe alınmış kitaplıkların adlarını görüntülemek için aşağıdaki komutlardan birini kullanın:
libman cache list
libman cache list --libraries
Aşağıdakine benzer bir çıkış görüntülenir:
Cache contents: --------------- unpkg: knockout react vue cdnjs: font-awesome jquery knockout lodash.js react
Sağlayıcı başına önbelleğe alınmış kitaplık dosyalarının adlarını görüntülemek için:
libman cache list --files
Aşağıdakine benzer bir çıkış görüntülenir:
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
Yukarıdaki çıktıda jQuery 3.2.1 ve 3.3.1 sürümlerinin CDNJS sağlayıcısı altında önbelleğe alındığının gösterildiğine dikkat edin.
CDNJS sağlayıcısının kitaplık önbelleğini boşaltmak için:
libman cache clean cdnjs
CDNJS sağlayıcı önbelleği
libman cache list
boşaltıldıktan sonra komut aşağıdakileri görüntüler:Cache contents: --------------- unpkg: knockout react vue cdnjs: (empty)
Tüm desteklenen sağlayıcıların önbelleğini boşaltmak için:
libman cache clean
Tüm sağlayıcı önbellekleri
libman cache list
boşaltıldıktan sonra komut aşağıdakileri görüntüler:Cache contents: --------------- unpkg: (empty) cdnjs: (empty)
Ek kaynaklar
ASP.NET Core