创建nuxt3项目时出错.无法从注册表下载模板



当我使用此命令创建新的Nuxt 3项目时:

npx nuxi init nuxt-app

它输出这个错误:

ERROR  (node:1752) ExperimentalWarning: The Fetch API is an experimental feature. This feature could change at any time                         09:53:25
(Use `node --trace-warnings ...` to show where the warning was created)

ERROR  Failed to download template from registry: fetch failed                                                                                  09:53:25
at /C:/Users/myname/AppData/Local/npm-cache/_npx/a95e0f536cf9a537/node_modules/nuxi/dist/chunks/init.mjs:13269:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async downloadTemplate (/C:/Users/myname/AppData/Local/npm-cache/_npx/a95e0f536cf9a537/node_modules/nuxi/dist/chunks/init.mjs:13268:20)
at async Object.invoke (/C:/Users/myname/AppData/Local/npm-cache/_npx/a95e0f536cf9a537/node_modules/nuxi/dist/chunks/init.mjs:13336:15)
at async _main (/C:/Users/myname/AppData/Local/npm-cache/_npx/a95e0f536cf9a537/node_modules/nuxi/dist/cli.mjs:50:20)

我的环境:

  • 操作系统:Windows 11
  • 节点版本:18.12.0
  • npm版本:8.12.1

起初我怀疑这是由于我的网络造成的。但当我尝试安装其他npm软件包时,并没有出现错误。

我也遇到了同样的错误(windows 10(。我的很简单。

ERROR  Error: Failed to download template from registry: fetch failed

是的,是因为网络或ip被屏蔽了。不过我还是设法解决了。以下是我所做的。

首先进入C:WindowsSystem32driversetc

在此文件夹中查找"hosts"文件。以管理员身份用记事本打开它。现在,在文件的末尾(以及其他ip地址(添加这一行。

// Some other ip address
185.199.108.133 raw.githubusercontent.com

这应该可以解决问题。

我在客户(银行(工作时遇到了同样的问题,这主要是网络限制。他们将访问权限限制在少数几个NPM包上,而这一个没有列入白名单(主要是模板(。

不知道如何正确绕过它,除了手动使用SSH/HTTP克隆获取代码,或者可能要求他们允许特定的端点。

我在这里找到了原因。

这确实是一个网络问题。它无法从命令行访问raw.githubusercontent.com,因为找不到相应的IP地址。

在将raw.githubusercontent.com的正确ip地址添加到Windows主机文件后,问题已修复

一个更机密的解决方案是将操作系统的DNS服务器设置为公共DNS服务器,如Google(8.8.8.8(

1.打开此文件:C:\Windows\System32\drivers\etc2.在末尾添加:185.199.108.133 raw.githubusercontent.com3.保存它,问题就应该解决了(也许你没有权限(。

最新更新