GNU/Linux >> Linux Esercitazione >  >> Linux

Come gestire i pacchetti NodeJS usando Npm

Tempo fa abbiamo pubblicato una guida per gestire i pacchetti Python utilizzando PIP . Oggi parleremo di come gestire i pacchetti NodeJS usando Npm. NPM è il più grande registro software che contiene oltre 600.000 pacchetti. Ogni giorno, gli sviluppatori di tutto il mondo condividono e scaricano pacchetti tramite npm. In questa guida, spiegherò le basi per lavorare con npm, come l'installazione di pacchetti (localmente e globalmente), l'installazione di determinate versioni di un pacchetto, l'aggiornamento, la rimozione e la gestione dei pacchetti NodeJS e così via.

Installazione di NPM

Poiché npm è scritto in NodeJS, è necessario installare NodeJS per utilizzare npm. Per installare NodeJS su diverse distribuzioni Linux, fare riferimento al seguente collegamento.

  • Come installare NodeJS su Linux

Una volta installato, assicurati che NodeJS e NPM siano stati installati correttamente. Ci sono due modi per farlo.

Per verificare dove è stato installato il nodo, eseguire il comando seguente:

$ which node
/home/sk/.nvm/versions/node/v9.4.0/bin/node

Controlla la sua versione:

$ node -v
v9.4.0

Accedi alla sessione di REPL del nodo:

$ node
> .help
.break Sometimes you get stuck, this gets you out
.clear Alias for .break
.editor Enter editor mode
.exit Exit the repl
.help Print this help message
.load Load JS from a file into the REPL session
.save Save all evaluated commands in this REPL session to a file
> .exit

Controlla dove è installato npm:

$ which npm
/home/sk/.nvm/versions/node/v9.4.0/bin/npm

E la versione:

$ npm -v
5.6.0

Grande! Node e NPM sono stati installati e funzionano! Come avrai notato, ho installato NodeJS e NPM nella mia directory $HOME per evitare problemi di autorizzazione durante l'installazione dei moduli a livello globale. Questo è il metodo consigliato dal team di NodeJS.

Bene, andiamo avanti per vedere come gestire i moduli (oi pacchetti) NodeJS usando npm.

Gestisci i pacchetti NodeJS utilizzando Npm

Installazione dei moduli NodeJS

I moduli NodeJS possono essere installati localmente o globalmente (a livello di sistema). Ora mostrerò come installare un pacchetto in locale.

Installa i pacchetti in locale

Per gestire i pacchetti in locale, normalmente utilizziamo package.json file.

Per prima cosa, creiamo la nostra directory di progetto.

$ mkdir demo
$ cd demo

Crea un file package.json all'interno della directory del tuo progetto. Per farlo, esegui:

$ npm init

Inserisci i dettagli del tuo pacchetto come nome, versione, autore, pagina github ecc., o premi semplicemente il tasto INVIO per accettare i valori predefiniti e digita SI per confermare.

This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.

See `npm help json` for definitive documentation on these fields
and exactly what they do.

Use `npm install <pkg>` afterwards to install a package and
save it as a dependency in the package.json file.

Press ^C at any time to quit.
package name: (demo) 
version: (1.0.0) 
description: demo nodejs app
entry point: (index.js) 
test command: 
git repository: 
keywords: 
author: 
license: (ISC) 
About to write to /home/sk/demo/package.json:

{
 "name": "demo",
 "version": "1.0.0",
 "description": "demo nodejs app",
 "main": "index.js",
 "scripts": {
 "test": "echo \"Error: no test specified\" && exit 1"
 },
 "author": "",
 "license": "ISC"
}

Is this ok? (yes) yes

Il comando precedente inizializza il tuo progetto e crea il file package.json.

Puoi anche farlo in modo non interattivo usando il comando:

$ npm init --y

Questo creerà rapidamente un file package.json con valori predefiniti senza l'interazione dell'utente.

Ora installiamo il pacchetto chiamato commander .

$ npm install commander

Esempio di output:

npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN [email protected] No repository field.

+ [email protected]
added 1 package in 2.519s

Questo creerà una directory denominata "node_modules" (se non esiste già) nella directory principale del progetto e scarica i pacchetti in essa contenuti.

Controlliamo il file package.json.

$ cat package.json 
{
 "name": "demo",
 "version": "1.0.0",
 "description": "demo nodejs app",
 "main": "index.js",
 "scripts": {
 "test": "echo \"Error: no test specified\" && exit 1"
 },
 "author": "",
 "license": "ISC",
 "dependencies": {
 "commander": "^2.13.0"
 }
}

Vedrai che le dipendenze sono state aggiunte. Il cursore (^ ) nella parte anteriore del numero di versione indica che durante l'installazione, npm estrarrà la versione più alta del pacchetto che riesce a trovare.

$ ls node_modules/
commander

Il vantaggio del file package.json è che se hai il file package.json nella directory del tuo progetto, puoi semplicemente digitare "npm install", quindi npm esaminerà le dipendenze elencate nel file e le scaricherà tutte. Puoi persino condividerlo con altri sviluppatori o eseguire il push nel tuo repository GitHub, quindi quando digitano "npm install", riceveranno tutti gli stessi pacchetti che hai tu.

Potresti anche notare un altro file json denominato package-lock.json . Questo file garantisce che le dipendenze rimangano le stesse su tutti i sistemi su cui è installato il progetto.

Per utilizzare il pacchetto installato nel tuo programma, crea un file index.js (o qualsiasi nome a tua scelta) nella directory del progetto con il codice effettivo, quindi eseguilo usando il comando:

$ node index.js

Installa i pacchetti a livello globale

Se si desidera utilizzare un pacchetto come strumento da riga di comando, è meglio installarlo a livello globale. In questo modo, funziona indipendentemente da quale sia la directory corrente.

$ npm install async -g
+ [email protected]
added 2 packages in 4.695s

Oppure,

$ npm install async --global

Per installare una versione specifica di un pacchetto, facciamo:

$ npm install [email protected] --global

Aggiornamento dei moduli NodeJS

Per aggiornare i pacchetti locali, vai alla directory del progetto in cui si trova package.json ed esegui:

$ npm update

Quindi, esegui il comando seguente per assicurarti che tutti i pacchetti siano stati aggiornati.

$ npm outdated

Se non ci sono aggiornamenti, non restituisce nulla.

Per scoprire quali pacchetti globali devono essere aggiornati, esegui:

$ npm outdated -g --depth=0

Se non è presente alcun output, tutti i pacchetti vengono aggiornati.

Per aggiornare un singolo pacchetto globale, esegui:

$ npm update -g <package-name>

Per aggiornare tutti i pacchetti globali, esegui:

$ npm update -g <package>

Elenco dei moduli NodeJS

Per elencare i pacchetti locali, vai alla directory del progetto ed esegui:

$ npm list
[email protected] /home/sk/demo
└── [email protected]

Come vedi, ho installato il pacchetto "comandante" in modalità locale.

Per elencare i pacchetti globali, esegui questo comando da qualsiasi posizione:

$ npm list -g

Esempio di output:

/home/sk/.nvm/versions/node/v9.4.0/lib
├─┬ [email protected]
│ └── [email protected]
└─┬ [email protected]
 ├── [email protected]
 ├── [email protected]
 ├── [email protected]
 ├── [email protected]
 ├── [email protected]
 ├── [email protected]
[...]

Questo comando elencherà tutti i moduli e le loro dipendenze.

Per elencare solo i moduli di livello superiore, usa --depth=0 opzione:

$ npm list -g --depth=0
/home/sk/.nvm/versions/node/v9.4.0/lib
├── [email protected]
└── [email protected]

Ricerca dei moduli NodeJS

Per cercare un modulo, usa il comando "npm search":

npm search <search-string>

Esempio:

$ npm search request

Questo comando visualizzerà tutti i moduli che contengono la stringa di ricerca "request".

Rimozione dei moduli NodeJS

Per rimuovere un pacchetto locale, vai alla directory del progetto ed esegui il seguente comando per rimuovere il pacchetto dai tuoi node_modules directory:

$ npm uninstall <package-name>

Per rimuoverlo dalle dipendenze in package.json file, usa il salva segnala come di seguito:

$ npm uninstall --save <package-name>

Per rimuovere i pacchetti installati a livello globale, esegui:

$ npm uninstall -g <package>

Pulizia della cache NPM

Per impostazione predefinita, NPM conserva la copia di un pacchetto installato nella cartella della cache denominata npm nella directory $HOME durante l'installazione. Quindi puoi installarlo la prossima volta senza doverlo scaricare di nuovo.

Per visualizzare i moduli memorizzati nella cache:

$ ls ~/.npm

La cartella della cache viene invasa da tutti i vecchi pacchetti nel tempo. È meglio pulire la cache di tanto in tanto.

A partire da [email protetta], la cache npm si risolve automaticamente da problemi di danneggiamento e i dati estratti dalla cache sono garantiti per essere validi. Se vuoi assicurarti che tutto sia coerente, esegui:

$ npm cache verify

Per svuotare l'intera cache, esegui:

$ npm cache clean --force

Visualizzazione della configurazione NPM

Per visualizzare la configurazione npm, digitare:

$ npm config list

Oppure,

$ npm config ls

Esempio di output:

; cli configs
metrics-registry = "https://registry.npmjs.org/"
scope = ""
user-agent = "npm/5.6.0 node/v9.4.0 linux x64"

; node bin location = /home/sk/.nvm/versions/node/v9.4.0/bin/node
; cwd = /home/sk
; HOME = /home/sk
; "npm config ls -l" to show all defaults.

Per visualizzare la posizione globale corrente:

$ npm config get prefix
/home/sk/.nvm/versions/node/v9.4.0

E per ora è tutto. Quello che abbiamo appena trattato qui sono solo le basi. NPM è un argomento vasto. Per maggiori dettagli, vai alla Guida introduttiva a NPM guida.


Linux
  1. Come installare pip per gestire facilmente i pacchetti PyPI

  2. Come utilizzare il comando apt per gestire i pacchetti in Linux

  3. Come installare i pacchetti Npm in Nixos?

  4. Procedura:utilizzare Bundler per gestire le gemme di rubino

  5. Come gestisci i pacchetti in Ubuntu?

Come gestire AWS Cloudwatch utilizzando aws-cli

Come installare e gestire i pacchetti su CentOS utilizzando RPM

Come gestire le versioni di Nodejs con n in Linux

Come gestire i pacchetti Python utilizzando PIP

Come installare in modo sicuro i pacchetti utilizzando Npm o Yarn su Linux

Come installare gli ultimi NodeJS e NPM in Linux