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.