Ich erstelle a.bat unter Windows 7, der Inhalt von a.bat ist:
@echo off
npm config set registry https://registry.npmjs.org/
und dann a.bat ausführen, aber nicht funktionieren. Ich finde, das Wort "set" ist ein spezielles Schlüsselwort für npm und bat. Gibt es Methoden, um diese Frage zu lösen?
node.js
batch-file
npm
Mopduan
quelle
quelle
https://registry.npmjs.com/
https://registry.npmjs.org/
npm config get registry
, um die Registrierungs-URL zu kennenAntworten:
Sie sollten die npm-Registrierung nicht mithilfe von
.bat
Dateien ändern . Versuchen Sie stattdessen, die.npmrc
Datei zu ändern, für die die Konfiguration giltnpm
. Der richtige Befehl zum Ändern der Registrierung lautetnpm config set registry <registry url>
Sie können weitere Informationen mit dem
npm help config
Befehl finden und nach Berechtigungen suchen , wenn und wenn Sie.bat
Dateien auf diese Weise ausführen.quelle
npm config set registry=<registry url>
config
Teil ist nicht erforderlich, kann nur ausgeführt werdennpm get registry
, um Ihren aktuellen Teil anzuzeigen undnpm set registry https://registry.npmjs.org/
auf den Standardwert zurückzusetzen.Wir können npm install auch mit
registry
Optionen für mehrere benutzerdefinierte Registrierungs-URLs ausführen .quelle
Sie können mit der .bat-Datei Änderungen vornehmen, um sicherzustellen, dass Sie den Aufrufbefehl vorher ausführen. Dies hilft hoffentlich jedem, der in Zukunft ähnliche .bat-Befehle erstellt
quelle
In Version 4.4.1 können Sie Folgendes verwenden:
Wobei @myco Ihr Paketumfang ist. Sie können das Paket folgendermaßen installieren:
ref: https://docs.npmjs.com/misc/scope
quelle
Wahrscheinlich bin ich zu spät, um zu antworten. Aber wenn jemand es braucht, funktioniert das Folgen gut, da ich es oft benutzt habe.
quelle
Auf npm Version 3.7.3
npm set registry=http://whatever/
quelle
Durch Ausführen Ihrer .bat-Datei legen Sie die Konfiguration nur für diese Sitzung fest, nicht global. Wenn Sie eine andere cmd-Eingabeaufforderung öffnen und ausführen
npm install
, wird diese Konfiguration für diese Sitzung nicht festgelegt. Ändern Sie daher Ihre .bat-Datei alsquelle
Stellen Sie die npm-Registrierung global ein
Verwenden Sie den folgenden Befehl, um die .npmrc-Konfigurationsdatei für den angemeldeten Benutzer zu ändern
npm config set registry <registry url>
Beispiel:
npm config set registry https://registry.npmjs.org/
Legen Sie den Umfang der npm-Registrierung fest
Bereiche ermöglichen die Gruppierung verwandter Pakete. Pakete mit Gültigkeitsbereich werden in einem Unterordner unter dem Ordner node_modules installiert .
Beispiel : node_modules / @ my-org / packagaename
So legen Sie die Bereichsregistrierung fest:
npm config set @my-org:registry http://example.reg-org.com
So installieren Sie Pakete mithilfe des Gültigkeitsbereichs:
npm install @my-org/mypackage
Wenn Sie Pakete von scope @ my-org installieren, sucht npm in der mit scope @ my-org verknüpften Registrierungseinstellung nach der Registrierungs-URL.
Legen Sie die npm-Registrierung lokal für ein Projekt fest
So ändern Sie die npm-Registrierung nur für das aktuelle Projekt. Erstellen Sie eine Datei im Stammordner des Projekts als
.npmrc
Fügen Sie den folgenden Inhalt in die Datei ein
quelle
Verwenden Sie keine Großbuchstaben für Ihr Paket:
benutze das:
quelle
Möglicherweise können Sie die npm-Registrierung nicht mithilfe einer
.bat
Datei ändern, wie Gntem ausgeführt hat. Ich verstehe jedoch, dass Sie die Fähigkeit benötigen, sich ändernde Registrierungen zu automatisieren. Sie können dies tun, indem Sie Ihre.npmrc
Konfigurationen in separaten Dateien (z. B. npmrc_jfrog & npmrc_default ) speichern und Ihre.bat
Dateien die Kopieraufgabe ausführen lassen .Zum Beispiel (in Windows): Ihr
default_registry.bat
wird habenund dein
jfrog_registry.bat
Wille hatHinweis:
/y
Unterdrückt die Aufforderung, zu bestätigen, dass Sie eine vorhandene Zieldatei überschreiben möchten.Dadurch wird sichergestellt, dass alle Konfigurationseigenschaften ( Registrierung, Proxy, apiKeys usw. ) in kopiert werden
.npmrc
.Sie können mehr über xcopy lesen hier .
quelle