97 votes

Comment spécifier le chemin de `package.json` à npm ?

Yo uso npm scripts pour construire mon projet. J'aimerais pouvoir exécuter les scripts à partir d'un répertoire différent. C'est-à-dire qu'au lieu de faire ce qui suit :

cd project;
npm run build;
cd ..

...j'aimerais simplement faire quelque chose comme :

npm run build -config project/package.json;

o

npm run build -wd project;

Est-ce possible ?

1 votes

0 votes

Je ne pense pas que ce soit possible car je n'ai pas trouvé le commutateur correspondant pour indiquer à npm le wd. Mais, je suppose que vous pouvez appeler vos commandes dans un sous shell comme ceci cmd /C "cd C:\ && npm -v" voir plus aquí

164voto

Johnner Points 1755

Utilisation de --prefix a fonctionné pour moi :

npm --prefix /path/to/project run build

path/to/project est le répertoire où se trouve votre paquet.json con build commande définie.

0 votes

Cela fonctionne en général pour moi, mais je ne trouve pas beaucoup de documentation sur --prefix est minime. J'ai un chemin comme /path/to-my-project/ Les autres dépendances npm sont placées dans des dossiers de projet différents au lieu du dossier de l'utilisateur. node_modules dossier. Existe-t-il un moyen d'échapper à ces arguments ? J'ai essayé les guillemets simples et doubles...

1 votes

Cela a bien fonctionné dans mon événement Visual Studio "Pre-build". C'est bizarre que je n'ai pas vu --prefix dans la documentation de NPM.

0 votes

prefix n'est pas une option mais plutôt un paramètre de configuration. Il est documenté sur le site npm-folders page ( docs.npmjs.com/files/dossiers )

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X