Différence entre installation npm et exécution npm
Quelle est la différence entre npm install et npm exécuter construire. Je l'ai remarqué dans mon projet qui, à certains moments, mnp commencer échoue lorsque npm install est effectué, mais lors de l'exécution de mnp exécuter construire il fonctionne très bien.
Comment le fonctionnement interne de ces deux objectifs, à savoir
install
et
run build
diffèrent-ils?
source d'informationauteur BalajiK
Vous devez vous connecter pour publier un commentaire.
npm install
installe les dépendances dans lenode_modules/
répertoire, pour le nœud de projet sur lequel vous travaillez. Vous pouvez appelerinstall
sur un autre node.js projet (module), pour l'installer en tant que dépendance de votre projet.npm run build
est un alias pournpm build
et il ne fait rien, sauf si vous spécifiez ce que le "build" dans votre colis.fichier json. Il vous permet d'effectuer tout le nécessaire à la construction de/prep les tâches de votre projet, avant qu'il soit utilisé dans un autre projet.build
est appelé parlink
etinstall
commandes, selon la documentation pour construire:Ponits à noter::
1) encore Une chose,
npm build
etnpm run build
sont deux choses différentesnpm build
va faire comme l'écrit Churro, maisnpm run build
va faire un travail personnalisé écrit à l'intérieur depackage.json
2) Et
npm build
etnpm run build
ne sont pas les mêmes. Ce que je signifie, vous ne pouvez pas spécifier quelque chose à l'intérieur de génération personnalisée (npm run build
) script et attendrenpm build
à faire de même. Essayez la chose suivante pour vérifier dans votrepackage.json
:et exécuter
npm run build
etnpm build
un par un et vous verrez la différence. Pour en savoir plus sur les commandes, je vous recommande de suivre npm documentation.Cheers!!
npm install
installe le depedendencies dans votre forfait.json config.npm run build
exécute le script "construire" et créé un script qui exécute votre application, disons server.jsnpm start
dirige le "démarrer" script qui sera ensuite "nœud server.js"Il est difficile de dire exactement ce que le problème a été mais, fondamentalement, si vous regardez vos scripts de configuration, je suppose que le "build" utilise une sorte de construire un outil pour créer votre application lors de la "start" suppose de construire a été fait, mais échoue si le fichier n'existe pas.
Vous êtes probablement à l'aide de la charmille ou grunt - il me semble me rappeler qu'un grognement application ont défini ces scripts ainsi qu'un "nettoyage" de script pour supprimer la dernière génération.
Construire des outils ont tendance à créer un fichier dans un bin/, dist/, ou créer/dossier que le script de démarrage, puis appelle - par exemple, "le noeud build/server.js". Lorsque votre
npm start
échoue, c'est probablement parce que vous avez appelénpm clean
ou semblable à supprimer la dernière version de votre application fichier n'est pas présent causant des mnp commencer à échouer.mnp de la génération de code source - d'aborder la discussion de cette question - est sur github pour vous de regarder si vous le souhaitez. Si vous exécutez
npm build
directement et vous avez un "build" script défini, elle va sortir avec un message d'erreur vous demandant de vous appeler votre script de build commenpm run-script build
il n'est donc pas le même quenpm run script
.Je ne suis pas tout à fait sûr de ce que
npm build
ne, mais il semble être lié à postinstall et à l'emballage des scripts dans les dépendances. Je suppose que cela pourrait être de s'assurer que toutes les CLI scripts de construction ou de bibliothèques natives requis par les dépendances sont construites pour l'environnement spécifique après avoir téléchargé le package. Ce sera pourquoi lien et installer appeler ce script.