J'essaie d'utiliser Gulp et Node.Js pour diffuser mon processus de minification et de concaténation de fichiers CSS/JS pour la production.
Voici ce que j'ai fait.
npm install -g gulp
NODE_PATH
et l'a fixée à %AppData%\npm\node_modules
.Après avoir fermé et rouvert ma ligne de commande, j'ai essayé d'exécuter une tâche de groupe à partir de la ligne de commande (c'est-à-dire gulp css
). Mais cela me donne l'erreur suivante
'gulp' is not recognized as an internal or external command
Comment puis-je obtenir que cela fonctionne?
Lorsque j'ai ouvert le chemin suivant à l'aide de la barre de recherche dans Windows, %AppData%\npm\node_modules
je vois les deux dossiers suivants
gulp
gulp-cli
J'ai essayé d'ajouter %AppData%\npm\node_modules
à la variable Path
de ma variable système, mais cela n'a pas été pris car cette variable a atteint sa limite de caractères maximale autorisée.
J'ai enlevé quelques chemins de ma variable Path
et ajouté ;C:\Users\[MyWindowsUserName]\AppData\Roaming\npm\node_modules
mais ne fonctionne toujours pas.
J'ai même essayé de définir le chemin au moment de l'exécution à l'aide de cette commande
PATH=%PATH%;C:\Users\[MyWindowsUserName]\AppData\Roaming\npm\node_modules
Puis exécutez gulp
et toujours les mêmes problèmes.
Qu'est-ce que j'oublie ici? De quoi ai-je besoin pour que cela fonctionne?
J'ai résolu le problème en désinstallant NodeJs et gulp, puis en les réinstallant.
Pour installer gulp globalement, j'ai exécuté la commande suivante
npm install -g gulp
J'ai eu le même problème quand j'ai installé localement initialement (w/o -g). J'ai réinstallé avec -g (global) et puis cela a fonctionné.
npm install -g gulp
vous devez exécuter gulp à partir du dossier où gulpfile.js
est disponible.
Aller au My Computer>Properties>Advance System Settings>Environment Variables>
Sous les variables de l'administrateur, éditez la variable PATH et changez sa valeur en "C:\Users\Username\AppData\Roaming\npm"
. Remarque: le nom d'utilisateur dans le chemin sera le nom d'utilisateur actuel de l'administrateur avec lequel vous vous êtes connecté.
J'ai eu le même problème sur Windows 7. Vous devez modifier votre variable système de chemin manuellement.
Allez dans START -> éditez les variables d'environnement système -> Variables d'environnement -> dans la partie système, trouvez les variables "Chemin" -> Éditer -> ajouter un nouveau chemin après ";" dans votre répertoire de fichiers gulp.cmd comme '; C:\Utilisateurs\VOTRENOM\AppData\Roaming\npm' -> cliquez sur ok et fermez ces fenêtres -> redémarrez votre CLI -> amusez-vous
Dans mon cas, ce problème s’est produit parce que j’ai déjà utilisé npm install
avec un autre utilisateur du système dans mon dossier de projet. Gulp était déjà installé dans le monde entier. Après la suppression du dossier/node_modules/dans mon projet et l'exécution de npm install
avec l'utilisateur actuel, cela a fonctionné.
Désolé, c'était une faute de frappe. Vous pouvez ajouter node_modules à la fin de la variable de chemin d'accès global de votre utilisateur ou vérifier les autorisations associées à ce dossier (node _modules). L'erreur ne semble pas être le dernier cas, mais j'ai rencontré des problèmes similaires au vôtre. Je trouve la première solution suffisante pour la plupart des cas. Il suffit d’aller dans les variables d’environnement et d’ajouter le chemin de node_modules à la dernière partie de la variable de chemin de votre utilisateur. Notez que je dis utilisateur et non système.
Ajoutez simplement un point-virgule à la fin de la déclaration de variable et ajoutez le chemin statique à votre dossier node_module. (Ex c:\path\to\node_module)
Sinon, vous pouvez:
Dans votre CMD
PATH=%PATH%;C:\\path\to\node_module
MODIFIER
La dernière solution fonctionnera tant que vous ne fermez pas votre CMD. Alors, utilisez la première solution pour un changement permanent.
Vous devez vous assurer que, lorsque vous exécuterez la commande (install npm -g gulp), cela créera install gulp dans le répertoire C: \
ce répertoire doit correspondre à la variable whatver npm path définie dans votre chemin Java.
il suffit de lancer le chemin à partir de l'invite de commande et de le vérifier. sinon, changez votre variable de chemin de classe Java où que vous soyez installé.
Ça devrait marcher.