J'ai généré une application JHipster avec Angular et Java, à l'intérieur d'un référentiel que j'avais précédemment créé. J'ai ensuite généré quelques classes JDL avec elle et la construction a réussi, mais quand j'ai essayé de valider mon changements dans GitHub, il a jeté l'erreur suivante:
Commit failed - exit code 1 received, with output: '.git/hooks/pre-commit: line 32: node: command not found'
J'ai regardé à l'intérieur de mon fichier de pré-commit:
#!/bin/sh
# husky
# Hook created by Husky
# Version: 1.3.1
# At: 2/13/2019, 12:10:11 PM
# See: https://github.com/typicode/husky#readme
# From npm package
# Name: husky
# Directory: undefined
# Homepage: https://github.com/typicode/husky#readme
scriptPath="JHipsterProject/node_modules/husky/run.js"
hookName=`basename "$0"`
gitParams="$*"
debug() {
[ "${HUSKY_DEBUG}" = "true" ] && echo "husky:debug $1"
}
debug "$hookName hook started..."
if [ -f "$scriptPath" ]; then
# if [ -t 1 ]; then
# exec < /dev/tty
# fi
if [ -f ~/.huskyrc ]; then
debug "source ~/.huskyrc"
source ~/.huskyrc
fi
node "$scriptPath" $hookName "$gitParams"
else
echo "Can't find Husky, skipping $hookName hook"
echo "You can reinstall it using 'npm install husky --save-dev' or delete this hook"
fi
L'erreur était à la ligne 32:
node "$scriptPath" $hookName "$gitParams"
Je ne connais pas les fichiers de pré-validation ni leur fonctionnement, mais j'ai actuellement v10.15.0
pour Node.js et 1.8.0_201
pour mon Java JDK et JRE. La version de JHipster que j'utilise est 5.8.1
.
Y a-t-il quelque chose que je devrais changer dans ce fichier, y compris la ligne 32 afin de me débarrasser de l'erreur dans ma validation?
J'utilise également le code Visual Studio IDE si cela aide du tout.
Merci d'avance.
Comme l'a suggéré @Stephen Savitzky, il peut s'agir d'un problème d'installation Node. Cependant, si vous pouvez
Ensuite, c'est probablement Node problème d'approvisionnement car les chemins d'accès à celui-ci peuvent être différents des terminaux ou des applications GUI comme VSC.
Votre configuration semble utiliser husky
pour les hooks de pré-validation, donc pour vous assurer que vous disposez de la bonne Node, vous pouvez ajouter ~/.huskyrc
comme suggéré dans la documentation :
# ~/.huskyrc
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
Ensuite, vous pouvez source Node à partir de NVM (si vous en utilisez une) ou d'une autre source. C'est également un bon moyen de déboguer ce qui se passe réellement lorsque husky
les scripts de hook démarrent.