Dopo l'installazione di Gulp: "nessun comando 'gulp' trovato"


250

Dopo aver installato gulp.js tramite npm, ricevo un no command 'gulp' founderrore quando eseguo il gulpcomando dalla stessa directory in cui è stato installato.

Quando guardo sotto la node_modules/.bin/directory, posso vedere l' gulpeseguibile lì.

C'è qualcosa che non va nella mia installazione di npm?


9
hai fatto un'installazione globale? npm install gulp -g
— Mukesh Soni,

2
Sto avendo lo stesso problema. Ho fatto un'installazione globale e ancora niente ...
— iluvpinkerton il

Questo link sarà sicuramente di aiuto fuori stackoverflow.com/a/45707907/5222115
— Murtuza Hussain

Risposte:


476

È perfettamente normale. Se si desidera gulp-clidisponibile sulla riga di comando, è necessario installarlo a livello globale.

npm install --global gulp-cli

Vedi le istruzioni di installazione .

Inoltre, node_modules/.bin/non è nel tuo $PATH. Ma viene automaticamente aggiunto da npm quando si eseguono script npm (vedere questo post sul blog per riferimento ).

Quindi potresti aggiungere scriptsal tuo package.jsonfile:

{
    "name": "your-app",
    "version": "0.0.1",
    "scripts": {
        "gulp": "gulp",
        "minify": "gulp minify"
    }
}

È quindi possibile eseguire npm run gulpo npm run minifyavviare attività gulp.


2
Mi viene chiesto di eseguire npm install -g gulp come sudo (Root. Admin) ma se lo faccio allora quando esco da un utente normale non riesco a trovare il comando gulp. Non credo sia bene rimanere in root per tutto ciò che preferirei che il mio ambiente funzionasse correttamente. Quindi qualcuno sa cosa potrebbe causare questo problema.
— Atterrato il

Immagino che tutto dipenda da come / dove è stato installato il nodo. Quando si utilizza github.com/creationix/nvm , non è necessario essere root per installare le librerie globali.
— Brian Clozel,

Penso di aver usato il programma di installazione su mac OSX per installare nodejs.org Non conosco la differenza tra nodejs e node @ £ $ @
— sbarcato il

3
Tieni presente che gulp stesso non è più un pacchetto globale. Invece, global-cli è (npm -i -g gulp-cli) e quel gulp globale dovrebbe effettivamente essere disinstallato prima!
— Ricardo Magalhães,

14

Ho risolto il problema senza reinstallare il nodo usando i comandi seguenti:

$ npm uninstall --global gulp gulp-cli
$ rm /usr/local/share/man/man1/gulp.1
$ npm install --global gulp-cli

1
Una versione leggermente aggiornata di questo ha funzionato per me, poiché utilizzo NVM per gestire il mio ambiente Node:$ npm uninstall -g gulp gulp-cli $ rm /Users/[usrName]/.nvm/versions/node/[nodeVersion]/share/man/man1/gulp.1 $ npm install -g gulp-cli
— JustJen

12

In realtà ho lo stesso problema.

Questo link è probabilmente la mia ipotesi migliore:

nodejs vs node su ubuntu 12.04

L'ho fatto per risolvere il mio problema:

sudo apt-get --purge remove node 
sudo apt-get --purge remove nodejs 
sudo apt-get install nodejs
sudo ln -s /usr/bin/nodejs /usr/bin/node

8
È inoltre necessario sudo ln -s /usr/bin/nodejs /usr/bin/nodepoiché molte app / pacchetti lo cercano lì.
— Seth,

1
Il ln -s [target] [name|directory]comando crea un collegamento simbolico ("alias" o "collegamento"). Vedi linuxcommand.org/man_pages/ln1.html
— definisce il

ancora non funziona qui ... Amico, penso che questo sia banale. Ma questo link da un'altra pagina SO ha ottenuto la risposta giusta. Basta eseguire localmente stackoverflow.com/questions/36457377/...~~V~~singular~~3rd
— swdev

6

Ho risolto il problema rimuovendo gulp e installando di nuovo gulp-cli:

rm /usr/local/bin/gulp
npm install -g gulp-cli

1
Necessario anche usaresudo
— App Dev Guy,

3

se ancora non risolto prova ad aggiungere questo ai tuoi package.jsscript

"scripts": { "gulp": "gulp" },

ed eseguirlo npm run gulp runt gulp script da gulpfile.js


1

Installazione su Mac - Sierra - Dopo numerosi tentativi falliti di installare ed eseguire gulp a livello globale tramite la riga di comando usando diverse istruzioni, ho scoperto di averlo aggiunto al mio percorso e ha funzionato:

export PATH=/usr/local/Cellar/node/7.6.0/libexec/npm/bin/:$PATH

Ho ottenuto quel percorso dall'output del testo durante l'installazione di gulp.


0

Ho provato con sudo e ha funzionato !!

sudo npm install --global gulp-cli

0

Sono su Lubuntu 19.10

Ho usato una combinazione di risposte precedenti e non ho modificato il $PATH.

  1. npm uninstall --global gulp gulp-cli Questo rimuove qualsiasi pacchetto se sono già lì.
  2. sudo npm install --global gulp-cli Reinstallalo come utente root.

Se vuoi fare copia e incolla

npm uninstall --global gulp gulp-cli && sudo npm install --global gulp-cli 

dovrebbe funzionare

Immagino --globalnon sia necessario qui poiché è installato usando sudo, ma l'ho usato per ogni evenienza.


0

nel mio caso c'era solo un problema, basta inserire "gulp": "gulp" nella porzione di script, di package.json, e quindi usare il comando npm run gulp.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.