"Npm Config Set Registry Https: //Registry. Npmjs. Org/" Is Not Working in Windows Bat File
I Create A. Bat on Windows 7, the Content of A. Bat Is: @Echo off Npm Config Set Registry and Then Run A. Bat, but Not Working, I Find the Word "Set" Is...
I create a.bat on windows 7, the content of a.bat is:
@echo off
npm config set registry
and then run a.bat, but not working, I find the word "set" is special keyword for npm and bat, is there any methods to resolve this question?
10 Answers
You shouldn't change the npm registry using .bat files.
Instead try to use modify the .npmrc file which is the configuration for npm.
The correct command for changing registry is
npm config set registry <registry url>
you can find more information with npm help config command, also check for privileges when and if you are running .bat files this way.
We can also run npm install with registry options for multiple custom registry URLs.
npm install --registry=
npm install --registry=
You can change using the .bat make sure you run the call command prior, hopefully this helps anyone in future making similar .bat commands
call npm config set registry
On version 4.4.1, you can use:
npm config set @myco:registry=
Where @myco is your package scope. You can install package in this way:
npm install @myco/my-package
ref:
Set npm registry globally
use the below command to modify the .npmrc config file for the logged in user
npm config set registry <registry url>Example:
npm config set registry
Set npm registry Scope
Scopes allow grouping of related packages together. Scoped packages will be installed in a sub-folder under node_modules folder.
Example: node_modules/@my-org/packagaename
To set the scope registry use:
npm config set @my-org:registryTo install packages using scope use:
npm install @my-org/mypackagewhenever you install any packages from scope @my-org npm will search in the registry setting linked to scope @my-org for the registry url.
Set npm registry locally for a project
To modify the npm registry only for the current project. create a file inside the root folder of the project as
.npmrcAdd the below contents in the file
registry = '
Probably I am too late to answer. But if anybody need it, following works fine, as I have used it a lot of times.
npm config set registry=
On npm version 3.7.3
npm set registry=
By executing your .bat you are setting config for only that session not globally. When you open and another cmd prompt and run npm install that config will not set for this session so modify your .bat file as
@echo off
npm config set registry
@cmd.exe /K
2.name can no longer contain capital letters
don't use capital letters for your package:
npm install --save uex
use this:
npm install --save vuex
You might not be able to change npm registry using .bat file as Gntem pointed out.
But I understand that you need the ability to automate changing registries.
You can do so by having your .npmrc configs in separate files (say npmrc_jfrog & npmrc_default) and have your .bat files do the copying task.
For example (in Windows):
Your default_registry.bat will have
xcopy /y npmrc_default .npmrc
and your jfrog_registry.bat will have
xcopy /y npmrc_jfrog .npmrc
Note: /y suppresses prompting to confirm that you want to overwrite an existing destination file.
This will make sure that all the config properties (registry, proxy, apiKeys, etc.) get copied over to .npmrc.
You can read more about xcopy here.