[Node.js] Paquet de nœuds (Grunt) installé mais non disponible



Answers

Ajoutez /usr/local/share/npm/bin/ à votre $PATH

Question

J'essaye de construire une bibliothèque github jquery-ui en utilisant grunt , mais après l'exécution de npm install je ne peux toujours pas exécuter la commande en fonction du fichier readme . Il donne juste No command 'grunt' found :

james@ubuntu:~/Documents/projects/ad2/lib/jquery-ui$ grunt build
No command 'grunt' found, did you mean:
 Command 'grun' from package 'grun' (universe)
grunt: command not found
james@ubuntu:~/Documents/projects/ad2/lib/jquery-ui$ npm ls
jquery-ui@1.9.0pre /home/james/Documents/projects/ad2/lib/jquery-ui
├─┬ grunt@0.3.9 
│ ├── async@0.1.18 
│ ├── colors@0.6.0-1 
│ ├─┬ connect@1.8.7 
│ │ ├── formidable@1.0.9 
│ │ ├── mime@1.2.5 
│ │ └── qs@0.5.0 
│ ├── dateformat@1.0.2-1.2.3 
│ ├─┬ glob-whatev@0.1.6 
│ │ └─┬ minimatch@0.2.4 
│ │   └── lru-cache@1.0.6 
│ ├─┬ gzip-js@0.3.1 
│ │ ├── crc32@0.2.2 
│ │ └── deflate-js@0.2.2 
│ ├── hooker@0.2.3 
│ ├─┬ jshint@0.5.9 
│ │ ├── argsparser@0.0.6 
│ │ └─┬ minimatch@0.2.4 
│ │   └── lru-cache@1.0.6 
│ ├─┬ nodeunit@0.6.4 
│ │ ├── tap-assert@0.0.10 
│ │ └─┬ tap-producer@0.0.1 
│ │   ├── inherits@1.0.0 
│ │   ├── tap-results@0.0.2 
│ │   └── yamlish@0.0.5 
│ ├─┬ nopt@1.0.10 
│ │ └── abbrev@1.0.3 
│ ├─┬ prompt@0.1.12 
│ │ ├── pkginfo@0.2.3 
│ │ └─┬ winston@0.5.11 
│ │   ├── eyes@0.1.7 
│ │   ├─┬ loggly@0.3.11 
│ │   │ └── timespan@2.2.0 
│ │   └── stack-trace@0.0.6 
│ ├── semver@1.0.13 
│ ├─┬ temporary@0.0.2 
│ │ └── package@1.0.0 
│ ├── uglify-js@1.0.7 
│ ├── underscore@1.2.4 
│ └── underscore.string@2.1.1 
├── grunt-compare-size@0.1.4 
├─┬ grunt-css@0.2.0 
│ ├── csslint@0.9.8 
│ └── sqwish@0.2.0 
├── grunt-html@0.1.1 
├── request@2.9.153 
├─┬ rimraf@2.0.1 
│ └── graceful-fs@1.1.8 
└─┬ testswarm@0.2.2 
  └── request@2.9.202 

Je suis confus, qu'est-ce qui me manque s'il vous plait?




Parfois, vous devez npm install package_name -g pour que cela fonctionne.




Sur WIN7, j'ai dû ajouter manuellement le chemin d'accès au dossier npm (qui contient le fichier «grunt» insaisissable) à la variable d'environnement Windows PATH. Dans mon cas c'était C: \ Users \ mhaagsma \ AppData \ Roaming \ npm




Sous Windows, une partie du mystère semble être là où npm installe le fichier Grunt.cmd. Alors que sur ma machine Linux, je devais exécuter sudo npm install -g grunt-cli, sur mon ordinateur portable Windows 8, Grunt était placé dans le répertoire '.npm-global':% USER_HOME% \. Npm-global et I a dû ajouter cela au Chemin.

Donc, sur Windows mes étapes étaient:

  • npm installer -g grunt-cli

  • comprendre où le grunt.cmd diable était (je suppose que pour certains, il est dans% USER_HOME% \ App_Data \ Roaming)

  • Ajouté l'emplacement à ma variable d'environnement Path. Ouvre une nouvelle invite cmd et la commande grunt fonctionne bien.




Dans mon cas, j'ai besoin de modifier le fichier / usr / local / bin / grunt dans la ligne 1 (ne le faites pas):

 #!/usr/bin/env node //remove this line
 #!/usr/bin/env nodejs // and put this line to run with nodejs

Édité:

Pour éviter les problèmes, j'ai créé un lien avec le nom de "node" car beaucoup d'autres programmes utilisent encore la commande "node".

 sudo ln -s /usr/bin/nodejs /usr/sbin/node



Links