我在Windows 7上创建a.bat,a.bat的内容是:
@echo off
npm config set registry https://registry.npmjs.org/
然后运行a.bat,但不工作,我找到了" set"是npm和bat的特殊关键字,有什么方法可以解决这个问题吗?
答案 0 :(得分:174)
您不应使用.bat
文件更改npm注册表。
而是尝试使用修改.npmrc
文件,这是npm
的配置。
更改注册表的正确命令是
npm config set registry <registry url>
您可以使用npm help config
命令查找更多信息,同时检查以何种方式运行.bat
文件的权限。
答案 1 :(得分:48)
您可以使用.bat进行更改,确保先运行call命令,希望这有助于将来制作类似的.bat命令
call npm config set registry https://registry.npmjs.org/
答案 2 :(得分:48)
我们还可以使用registry
选项为多个自定义注册表URL运行npm install。
npm install --registry=https://registry.npmjs.org/
npm install --registry=https://custom.npm.registry.com/
答案 3 :(得分:14)
在版本4.4.1上,您可以使用:
npm config set @myco:registry http://reg.example.com
@myco是您的包装范围。您可以通过以下方式安装软件包:
npm install @myco/my-package
答案 4 :(得分:8)
可能我来不及回答。但是,如果有人需要它,下面的工作正常,因为我已经使用了很多次。
npm config set registry=https://registry.npmjs.com/
答案 5 :(得分:6)
关于npm版本3.7.3
npm set registry=http://whatever/
答案 6 :(得分:4)
全局设置npm注册表
使用以下命令为登录用户修改.npmrc配置文件
npm config set registry <registry url>
示例: npm config set registry https://registry.npmjs.org/
设置npm注册表范围
范围允许将相关软件包组合在一起。范围内的软件包将安装在 node_modules 文件夹下的子文件夹中。
示例: node_modules / @ my-org / packagaename
要设置范围注册表,请使用:npm config set @my-org:registry http://example.reg-org.com
要使用范围安装软件包,请使用:npm install @my-org/mypackage
无论何时从范围 @ my-org 安装任何软件包,npm都会在链接到范围 @ my-org 的注册表设置中搜索注册表URL。
在本地为项目设置npm注册表
仅针对当前项目修改npm注册表。在项目的根文件夹中创建一个.npmrc
在文件中添加以下内容
registry = 'https://registry.npmjs.org/'
答案 7 :(得分:2)
通过执行.bat,您只为该会话设置全局配置。当您打开另一个cmd提示并运行npm install
时,该配置将不会为此会话设置,因此请将.bat文件修改为
@echo off
npm config set registry https://registry.npmjs.org/
@cmd.exe /K
答案 8 :(得分:0)
2.name can no longer contain capital letters
请勿在包裹中使用大写字母:
npm install --save uex
使用此:
npm install --save vuex
答案 9 :(得分:0)
您可能无法使用Gntem指出的.bat
文件来更改npm注册表。
但我知道您需要具有自动更改注册表的能力。
为此,您可以将.npmrc
配置放在单独的文件中(例如 npmrc_jfrog 和 npmrc_default ),然后让您的.bat
文件执行复制任务。
例如(在Windows中):
您的 default_registry.bat
将拥有
xcopy /y npmrc_default .npmrc
和您的 jfrog_registry.bat
将有
xcopy /y npmrc_jfrog .npmrc
注意: /y
禁止提示您确认要覆盖现有目标文件。
这将确保将所有配置属性(注册表,代理,apiKeys等)复制到.npmrc
。
您可以了解有关xcopy here的更多信息。
答案 10 :(得分:-3)
npm config set registry=https://registry.npmjs.com/
将在您的.npmrc配置文件中添加一行“ registry = https://registry.npmjs.com/”