Obsah

Synopse

npm link (v package dir)
npm link <pkg>
alias: Napm ln

Popis

Propojování balíčků je dvoufázový proces.

Nejprve npm link ve složce balíčku vytvoří symlink v globální složce{prefix}/lib/node_modules/<package>, který odkazuje na balíček, v němž byl proveden příkaz npmlink. Také propojí všechny koše v balíku s {prefix}/bin/{name}. všimněte si, že npm link používá globální předponu (její hodnotu najdete v npm prefix -g).

Následující npm link package-name v nějakém jiném umístění vytvoří symbolický odkaz z globálně nainstalovaného package-name na node_modules/aktuální složky.

Všimněte si, že package-name je převzato z package.json,nikoli z názvu adresáře.

Název balíčku může být volitelně doplněn předponou scope. Viz scope.Oboru musí předcházet symbol @ a za ním musí následovat lomítko.

Při vytváření tarballů pro npm publish jsou propojené balíky „snapshotovány“ do aktuálního stavu překladem symbolických odkazů.

To se hodí pro instalaci vlastních věcí, takže na nich můžete pracovat a testovat je opakovaně, aniž byste je museli neustále obnovovat.

Například:

cd ~/projects/node-redis # přejděte do adresáře s balíčky
npm link # vytvoří globální odkaz
cd ~/projects/node-bloggy # přejděte do jiného adresáře s balíčky.
npm link redis # link-install balíčku

Nyní se všechny změny v ~/projects/node-redis projeví v ~/projects/node-bloggy/node_modules/node-redis/. Všimněte si, že odkaz by měl být na název balíčku, nikoli na název adresáře tohoto balíčku.

Dva kroky můžete také zkrátit na jeden. Například pro zkrácení výše uvedeného případu použití:

cd ~/projects/node-bloggy # přejděte do adresáře vašeho hlavního projektu
npm link ../node-redis # link adresáře vaší závislosti

Druhý řádek je ekvivalentní provedení:

(cd ../node-redis; npm link)
npm link redis

To znamená, že nejprve vytvoří globální odkaz a poté odkáže cíl globálníinstalace do složky node_modules vašeho projektu.

Všimněte si, že v tomto případě se odkazujete na název adresáře, node-redis,spíše než na název balíčku redis.

Pokud je váš linkovaný balíček oborový (viz scope), musí váš linkovací příkaz obsahovat tento rozsah, např.

npm link @myorg/privatepackage

Viz také

  • npm developers
  • package.json
  • npm install
  • npm folders
  • npm config
  • npmrc

.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.