Použití rozhraní příkazového řádku LibMan s ASP.NET Core
Správce knihoven (LibMan) je jednoduchý nástroj pro získávání knihoven na straně klienta. LibMan stáhne oblíbené knihovny a architektury ze systému souborů nebo ze sítě pro doručování obsahu (CDN). Mezi podporované sítě CDN patří CDNJS, jsDelivr a unpkg. Vybrané soubory knihovny se načtou a umístí do příslušného umístění v rámci projektu ASP.NET Core.
Požadavky
Instalace
Následující příkaz nainstaluje Knihovnu LibMan:
dotnet tool install -g Microsoft.Web.LibraryManager.Cli
Poznámka:
Ve výchozím nastavení architektura binárních souborů .NET, které se mají nainstalovat, představuje aktuálně spuštěnou architekturu operačního systému. Pokud chcete zadat jinou architekturu operačního systému, přečtěte si téma instalace nástroje dotnet, možnost --arch. Další informace najdete v tématu o problému GitHubu dotnet/AspNetCore.Docs #29262.
Globální nástroj .NET Core je nainstalován z balíčku NuGet Microsoft.Web.LibraryManager.Cli .
Využití
libman
Zobrazení nainstalované verze Knihovny LibMan:
libman --version
Zobrazení dostupných příkazů rozhraní příkazového řádku:
libman --help
Předchozí příkaz zobrazí výstup podobný následujícímu:
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.
Následující části popisují dostupné příkazy rozhraní příkazového řádku.
Inicializace knihovny LibMan v projektu
Příkaz libman init
vytvoří libman.json
soubor, pokud neexistuje. Soubor se vytvoří s výchozím obsahem šablony položky.
Synopse
libman init [-d|--default-destination] [-p|--default-provider] [--verbosity]
libman init [-h|--help]
Možnosti
Pro příkaz libman init
jsou k dispozici následující možnosti:
-d|--default-destination <PATH>
Cesta vzhledem k aktuální složce. Soubory knihovny jsou nainstalovány v tomto umístění, pokud není definována žádná
destination
vlastnost pro knihovnu vlibman.json
. Hodnota<PATH>
je zapsána dodefaultDestination
vlastnostilibman.json
.-p|--default-provider <PROVIDER>
Poskytovatel, který se má použít, pokud není pro danou knihovnu definován žádný zprostředkovatel. Hodnota
<PROVIDER>
je zapsána dodefaultProvider
vlastnostilibman.json
. Nahraďte<PROVIDER>
některou z následujících hodnot:cdnjs
filesystem
jsdelivr
unpkg
-h|--help
Zobrazí informace nápovědy.
--verbosity <LEVEL>
Nastavte úroveň podrobností výstupu. Nahraďte
<LEVEL>
některou z následujících hodnot:quiet
normal
detailed
Příklady
libman.json
Vytvoření souboru v projektu ASP.NET Core:
Přejděte do kořenového adresáře projektu.
Spusťte následující příkaz:
libman init
Zadejte název výchozího zprostředkovatele nebo stisknutím klávesy
Enter
použijte výchozího zprostředkovatele CDNJS. Mezi platné hodnoty patří:cdnjs
filesystem
jsdelivr
unpkg
Do libman.json
kořenového adresáře projektu se přidá soubor s následujícím obsahem:
{
"version": "1.0",
"defaultProvider": "cdnjs",
"libraries": []
}
Přidání souborů knihovny
Příkaz libman install
stáhne a nainstaluje soubory knihovny do projektu. Soubor libman.json
se přidá, pokud neexistuje. Soubor libman.json
se upraví tak, aby ukládaly podrobnosti o konfiguraci souborů knihovny.
Synopse
libman install <LIBRARY> [-d|--destination] [--files] [-p|--provider] [--verbosity]
libman install [-h|--help]
Argumenty
LIBRARY
Název knihovny, která se má nainstalovat. Tento název může obsahovat zápis čísla verze (například @1.2.0
).
Možnosti
Pro příkaz libman install
jsou k dispozici následující možnosti:
-d|--destination <PATH>
Umístění pro instalaci knihovny. Pokud není zadáno, použije se výchozí umístění. Pokud není zadána
libman.json
žádnádefaultDestination
vlastnost , je tato možnost povinná.Poznámka: Cílová cesta má určitá omezení. Pokud má zdroj balíčku například úplnou strukturu projektu, a ne jenom distribuční složku, nemůžete určit přesunutí složky. Další informace najdete v tématu Problém č. 407 a Problém č. 702
--files <FILE>
Zadejte název souboru, který chcete nainstalovat z knihovny. Pokud není zadaný, nainstalují se všechny soubory z knihovny. Zadejte jednu
--files
možnost pro každý soubor, který se má nainstalovat. Podporují se také relativní cesty. Například:--files dist/browser/signalr.js
.-p|--provider <PROVIDER>
Název poskytovatele, který se má použít pro získání knihovny. Nahraďte
<PROVIDER>
některou z následujících hodnot:cdnjs
filesystem
jsdelivr
unpkg
Pokud není zadána, použije se
defaultProvider
vlastnost.libman.json
Pokud není zadánalibman.json
žádnádefaultProvider
vlastnost , je tato možnost povinná.
-h|--help
Zobrazí informace nápovědy.
--verbosity <LEVEL>
Nastavte úroveň podrobností výstupu. Nahraďte
<LEVEL>
některou z následujících hodnot:quiet
normal
detailed
Příklady
Vezměme například následující soubor libman.json
:
{
"version": "1.0",
"defaultProvider": "cdnjs",
"libraries": []
}
Instalace souboru jQuery verze 3.2.1 jquery.min.js
do složky wwwroot/scripts/jquery pomocí zprostředkovatele CDNJS:
libman install jquery@3.2.1 --provider cdnjs --destination wwwroot/scripts/jquery --files jquery.min.js
Soubor libman.json
vypadá přibližně takto:
{
"version": "1.0",
"defaultProvider": "cdnjs",
"libraries": [
{
"library": "jquery@3.2.1",
"destination": "wwwroot/scripts/jquery",
"files": [
"jquery.min.js"
]
}
]
}
Chcete-li nainstalovat calendar.js
soubory z calendar.css
C:\temp\contosoCalendar\ pomocí poskytovatele systému souborů:
libman install C:\temp\contosoCalendar\ --provider filesystem --files calendar.js --files calendar.css
Následující výzva se zobrazí ze dvou důvodů:
- Soubor
libman.json
neobsahujedefaultDestination
vlastnost. - Příkaz
libman install
neobsahuje-d|--destination
možnost.
Po přijetí výchozího cíle libman.json
se soubor podobá následujícímu:
{
"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"
]
}
]
}
Obnovení souborů knihovny
Příkaz libman restore
nainstaluje soubory knihovny definované v souboru libman.json
. Platí následující pravidla:
- Pokud v kořenovém adresáři projektu neexistuje žádný
libman.json
soubor, vrátí se chyba. - Pokud knihovna určuje zprostředkovatele,
defaultProvider
vlastnost budelibman.json
ignorována. - Pokud knihovna určuje cíl,
defaultDestination
vlastnostlibman.json
bude ignorována.
Synopse
libman restore [--verbosity]
libman restore [-h|--help]
Možnosti
Pro příkaz libman restore
jsou k dispozici následující možnosti:
-h|--help
Zobrazí informace nápovědy.
--verbosity <LEVEL>
Nastavte úroveň podrobností výstupu. Nahraďte
<LEVEL>
některou z následujících hodnot:quiet
normal
detailed
Příklady
Obnovení souborů knihovny definovaných v libman.json
:
libman restore
Odstranění souborů knihovny
Příkaz libman clean
odstraní soubory knihovny, které byly dříve obnoveny prostřednictvím knihovny LibMan. Složky, které jsou po odstranění této operace prázdné. Přidružené konfigurace souborů knihovny ve libraries
vlastnosti libman.json
nejsou odebrány.
Synopse
libman clean [--verbosity]
libman clean [-h|--help]
Možnosti
Pro příkaz libman clean
jsou k dispozici následující možnosti:
-h|--help
Zobrazí informace nápovědy.
--verbosity <LEVEL>
Nastavte úroveň podrobností výstupu. Nahraďte
<LEVEL>
některou z následujících hodnot:quiet
normal
detailed
Příklady
Odstranění souborů knihovny nainstalovaných prostřednictvím knihovny LibMan:
libman clean
Odinstalace souborů knihovny
Příkaz libman uninstall
:
- Odstraní všechny soubory přidružené k zadané knihovně z cíle v souboru
libman.json
. - Odebere přidruženou konfiguraci knihovny z
libman.json
.
K chybě dojde, když:
- V kořenovém adresáři projektu neexistuje žádný
libman.json
soubor. - Zadaná knihovna neexistuje.
Pokud je nainstalovaná více než jedna knihovna se stejným názvem, zobrazí se výzva k výběru knihovny.
Synopse
libman uninstall <LIBRARY> [--verbosity]
libman uninstall [-h|--help]
Argumenty
LIBRARY
Název knihovny, která se má odinstalovat. Tento název může obsahovat zápis čísla verze (například @1.2.0
).
Možnosti
Pro příkaz libman uninstall
jsou k dispozici následující možnosti:
-h|--help
Zobrazí informace nápovědy.
--verbosity <LEVEL>
Nastavte úroveň podrobností výstupu. Nahraďte
<LEVEL>
některou z následujících hodnot:quiet
normal
detailed
Příklady
Vezměme například následující soubor libman.json
:
{
"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/"
}
]
}
Pokud chcete odinstalovat jQuery, jeden z následujících příkazů je úspěšný:
libman uninstall jquery
libman uninstall jquery@3.3.1
Odinstalace souborů Lodash nainstalovaných
filesystem
prostřednictvím poskytovatele:libman uninstall C:\temp\lodash\
Aktualizace verze knihovny
Příkaz libman update
aktualizuje knihovnu nainstalovanou prostřednictvím knihovny LibMan na zadanou verzi.
K chybě dojde, když:
- V kořenovém adresáři projektu neexistuje žádný
libman.json
soubor. - Zadaná knihovna neexistuje.
Pokud je nainstalovaná více než jedna knihovna se stejným názvem, zobrazí se výzva k výběru knihovny.
Synopse
libman update <LIBRARY> [-pre] [--to] [--verbosity]
libman update [-h|--help]
Argumenty
LIBRARY
Název knihovny, která se má aktualizovat.
Možnosti
Pro příkaz libman update
jsou k dispozici následující možnosti:
-pre
Získejte nejnovější předběžnou verzi knihovny.
--to <VERSION>
Získejte konkrétní verzi knihovny.
-h|--help
Zobrazí informace nápovědy.
--verbosity <LEVEL>
Nastavte úroveň podrobností výstupu. Nahraďte
<LEVEL>
některou z následujících hodnot:quiet
normal
detailed
Příklady
Aktualizace jQuery na nejnovější verzi:
libman update jquery
Aktualizace jQuery na verzi 3.3.1:
libman update jquery --to 3.3.1
Aktualizace jQuery na nejnovější předběžnou verzi:
libman update jquery -pre
Správa mezipaměti knihovny
Příkaz libman cache
spravuje mezipaměť knihovny LibMan. filesystem
Zprostředkovatel nepoužívá mezipaměť knihovny.
Synopse
libman cache clean [<PROVIDER>] [--verbosity]
libman cache list [--files] [--libraries] [--verbosity]
libman cache [-h|--help]
Argumenty
PROVIDER
Používá se pouze s příkazem clean
. Určuje mezipaměť poskytovatele, která se má vyčistit. Mezi platné hodnoty patří:
cdnjs
filesystem
jsdelivr
unpkg
Možnosti
Pro příkaz libman cache
jsou k dispozici následující možnosti:
--files
Zobrazte seznam názvů souborů, které jsou uložené v mezipaměti.
--libraries
Zobrazí seznam názvů knihoven, které jsou uložené v mezipaměti.
-h|--help
Zobrazí informace nápovědy.
--verbosity <LEVEL>
Nastavte úroveň podrobností výstupu. Nahraďte
<LEVEL>
některou z následujících hodnot:quiet
normal
detailed
Příklady
Pokud chcete zobrazit názvy knihoven uložených v mezipaměti pro jednotlivé poskytovatele, použijte jeden z následujících příkazů:
libman cache list
libman cache list --libraries
Zobrazí se výstup podobný následujícímu:
Cache contents: --------------- unpkg: knockout react vue cdnjs: font-awesome jquery knockout lodash.js react
Zobrazení názvů souborů knihovny uložených v mezipaměti na zprostředkovatele:
libman cache list --files
Zobrazí se výstup podobný následujícímu:
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
Všimněte si, že předchozí výstup ukazuje, že jQuery verze 3.2.1 a 3.3.1 jsou uloženy v mezipaměti pod poskytovatelem CDNJS.
Vyprázdnění mezipaměti knihovny pro zprostředkovatele CDNJS:
libman cache clean cdnjs
Po vyprázdnění mezipaměti zprostředkovatele CDNJS se zobrazí
libman cache list
následující příkaz:Cache contents: --------------- unpkg: knockout react vue cdnjs: (empty)
Vyprázdnění mezipaměti pro všechny podporované poskytovatele:
libman cache clean
Po vyprázdnění všech mezipamětí zprostředkovatele se zobrazí
libman cache list
následující příkaz:Cache contents: --------------- unpkg: (empty) cdnjs: (empty)