[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.




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.




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




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