HardHat无法下载编译器版本列表



所以这是我与hardhat的第一次交互。我使用npx hardhat创建了一个示例项目,但出于某种原因,当我尝试运行:时

npx hardhat test

我得到以下错误:

Error HH502: Couldn't download compiler versions list. Please check your connection.

堆栈跟踪中出现以下错误:

Caused by: FetchError: request to https://binaries.soliditylang.org/windows-amd64/list.json failed, reason: getaddrinfo EAI_AGAIN binaries.soliditylang.org

所以我试着用Chrome浏览binaries.soliditylang.org,发现我得到了net::ERR_NAME_NOT_RESOLVED

(即使当我试图导航到docs.soliditylang.org时,我也会遇到这个错误(

我知道这与DNS有关,但我不知道如何解决它。

我遇到了类似的问题。然而,对我来说,hardhat无法下载公司代理后面的编译器版本列表。尝试了很多东西。运气不好。经过大量的尝试和错误,我们找到了一种方法来完成这项工作。下载list.json并将其本地保持在CCD_ 4(窗口(。此外,从https://github.com/ethereum/solidity/releases下载适用于windows的solidity编译器可执行文件(必需版本(,并将其放在上面提到的同一文件夹中。现在,仔细阅读list.json并为感兴趣的solc编译器版本识别对象。将可执行文件重命名为该对象中path中给定的长名称。例如,如果您需要solc版本0.8.0,则0.8.0版本的list.json中的pathsolc-windows-amd64-v0.8.4+commit.c7e474f2.exe。使用此选项可以重命名下载的可执行文件。现在,运行npm test。这应该可以解决问题。

还有一种有趣的方法可以在windows上的docker中运行编译器。为此,请关注此处的讨论-https://github.com/NomicFoundation/hardhat/issues/1280

使用将.env文件添加到项目的根目录

HTTPS_PROXY = ...

在中解决https://github.com/NomicFoundation/hardhat/pull/1291

必须首先使用sudo chmod -R 777 /Users/<username>/Library/Caches/hardhat-nodejs

最新更新