"npm config set registry https://registry.npmjs.org/"在视窗蝙蝠文件中不起作用



我在windows 7上创建了a.bat,a.bat的内容是:

@echo off
npm config set registry https://registry.npmjs.org/

然后运行.bat,但不起作用,我发现"set"这个词是npm和bat的特殊关键字,有什么方法可以解决这个问题吗?

您不应该使用.bat文件更改npm注册表。而是尝试使用修改.npmrc文件,该文件是npm的配置。更改注册表的正确命令是

npm config set registry <registry url>

您可以通过npm help config命令找到更多信息,还可以检查以这种方式运行.bat文件的时间和权限。

我们还可以为多个自定义注册表URL运行带有registry选项的npm安装。

npm install --registry=https://registry.npmjs.org/ 
npm install --registry=https://custom.npm.registry.com/ 

您可以使用.bat进行更改,确保您之前运行了调用命令,希望这能帮助将来的任何人制作类似的.bat命令

call npm config set registry https://registry.npmjs.org/

在4.4.1版本上,您可以使用:

npm config set @myco:registry=http://reg.example.com

其中@myco是您的包范围。你可以用这种方式安装软件包:

npm install @myco/my-package

参考:https://docs.npmjs.com/misc/scope

  1. 全局设置npm注册表

    使用以下命令修改已登录用户的.npmrc配置文件

    npm config set registry <registry url>

    示例:npm config set registry https://registry.npmjs.org/


  1. 设置npm注册表范围

    作用域允许将相关包分组在一起。作用域软件包将安装在node_modules文件夹下的子文件夹中。

    示例node_modules/@my-org/packageename

    要设置作用域注册表,请使用:npm config set @my-org:registry http://example.reg-org.com

    要使用作用域安装软件包,请使用:npm install @my-org/mypackage

    每当您从scope@my-org安装任何软件包时,npm都会在链接到scope@my-org的注册表设置中搜索注册表url。


  1. 为项目在本地设置npm注册表

    仅为当前项目修改npm注册表。在项目的根文件夹中创建一个文件作为.npmrc

    在文件中添加以下内容

   registry = 'https://registry.npmjs.org/'

可能我来不及回答了。但如果有人需要它,下面的操作很好,因为我已经用了很多次了。

npm config set registry=https://registry.npmjs.com/

在npm 3.7.3版上

npm set registry=http://whatever/

通过执行.bat,您只为该会话而不是全局设置配置。当您打开和另一个cmd提示符并运行npm install时,配置不会为此会话设置,因此将.bat文件修改为

@echo off
npm config set registry https://registry.npmjs.org/
@cmd.exe /K
2.name can no longer contain capital letters

包裹不要使用大写字母:

npm install --save uex

使用这个:

npm install --save vuex

正如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的信息。

最新更新