Je crée a.bat sous Windows 7, le contenu de a.bat est:
@echo off
npm config set registry https://registry.npmjs.org/
puis exécutez a.bat, mais ne fonctionne pas, je trouve que le mot «set» est un mot clé spécial pour npm et bat, existe-t-il des méthodes pour résoudre cette question?
node.js
batch-file
npm
mopduan
la source
la source
https://registry.npmjs.com/
plutôt quehttps://registry.npmjs.org/
npm config get registry
pour connaître l'URL du registreRéponses:
Vous ne devez pas modifier le registre npm à l'aide de
.bat
fichiers. Essayez plutôt d'utiliser modifier le.npmrc
fichier pour lequel la configuration estnpm
. La commande correcte pour changer de registre estnpm config set registry <registry url>
vous pouvez trouver plus d'informations avec la
npm help config
commande, vérifier également les privilèges quand et si vous exécutez des.bat
fichiers de cette façon.la source
npm config set registry=<registry url>
config
pièce n'est pas nécessaire, peut s'exécuter justenpm get registry
pour voir votre courant etnpm set registry https://registry.npmjs.org/
pour le remettre à la valeur par défaut.Nous pouvons également exécuter npm install avec des
registry
options pour plusieurs URL de registre personnalisées.la source
Vous pouvez changer en utilisant le .bat assurez-vous d'exécuter la commande call avant, j'espère que cela aidera quiconque à l'avenir à faire des commandes .bat similaires
la source
Sur la version 4.4.1, vous pouvez utiliser:
Où @myco est la portée de votre package. Vous pouvez installer le package de cette manière:
réf: https://docs.npmjs.com/misc/scope
la source
Je suis probablement trop tard pour répondre. Mais si quelqu'un en a besoin, le suivi fonctionne bien, car je l'ai utilisé beaucoup de fois.
la source
Sur la version 3.7.3 de npm
npm set registry=http://whatever/
la source
En exécutant votre .bat, vous définissez config uniquement pour cette session et non globalement. Lorsque vous ouvrez une autre invite cmd et exécutez
npm install
cette configuration ne sera pas définie pour cette session, modifiez votre fichier .bat commela source
Définir le registre npm globalement
utilisez la commande ci-dessous pour modifier le fichier de configuration .npmrc pour l'utilisateur connecté
npm config set registry <registry url>
Exemple:
npm config set registry https://registry.npmjs.org/
Définir l'étendue du registre npm
Les portées permettent de regrouper les packages associés. Les packages étendus seront installés dans un sous-dossier sous dossier node_modules .
Exemple : node_modules / @ my-org / packagaename
Pour définir l'utilisation du registre d'étendue:
npm config set @my-org:registry http://example.reg-org.com
Pour installer des packages à l'aide de la portée, utilisez:
npm install @my-org/mypackage
chaque fois que vous installez des packages à partir de scope @ my-org, npm recherchera dans le paramètre de registre lié à scope @ my-org l'URL du registre.
Définir le registre npm localement pour un projet
Pour modifier le registre npm uniquement pour le projet en cours. créer un fichier dans le dossier racine du projet comme
.npmrc
Ajoutez le contenu ci-dessous dans le fichier
la source
n'utilisez pas de majuscules pour votre colis:
utilisez ceci:
la source
Vous ne pourrez peut-être pas modifier le registre npm en utilisant un
.bat
fichier comme l' a souligné Gntem . Mais je comprends que vous avez besoin de la capacité d'automatiser les changements de registres. Vous pouvez le faire en.npmrc
plaçant vos configurations dans des fichiers séparés (par exemple npmrc_jfrog et npmrc_default ) et en faisant.bat
effectuer la tâche de copie à vos fichiers.Par exemple (sous Windows): Vous
default_registry.bat
aurezet votre
jfrog_registry.bat
volonté auraRemarque:
/y
supprime l'invite à confirmer que vous souhaitez écraser un fichier de destination existant.Cela garantira que toutes les propriétés de configuration ( registre, proxy, apiKeys, etc. ) seront copiées dans
.npmrc
.Vous pouvez en savoir plus sur xcopy ici .
la source