合同部署:<UnrecognizedContract>安全帽测试部署期间

问题描述 投票:0回答:3

部署令牌时,我收到 UnrecognizedContract。不确定问题是什么,但这里是带有deploy.js的代码

  async function main () {
  //Fetch contract to deploy
  const Token = await ethers.getContractFactory("Token")

  //Deploy Contract
  const token = await Token.deploy() 
  await token.deployed()
  console.log (`Token Deployed to: ${token.address}`)
}

main()
  .then (() => process.exit (0))
  .catch ((error) => {
    console.error (error);
    process.exit(1);
  });

任何修复将不胜感激

reactjs ethereum hardhat
3个回答
0
投票

我遇到了类似的问题,发现hardhat console.sol 的导入不起作用。请检查您的脚本是否存在导入或任何其他错误。如果智能合约被部署,那么智能合约的执行将不起作用。我主要使用hardhat框架来编译和部署智能合约

pragma solidity ^0.8.0;

import "hardhat/console. Sol";

问题

Contract deployment: <UnrecognizedContract>

修复

修复智能合约上的导入或智能合约上的任何其他错误后

创建 /src/artifacts 文件夹的备份,然后删除该文件夹。

重新编译

npx 安全帽编译

重新部署

npx 安全帽运行脚本/yourdeploymentscript.js

检查部署控制台,您应该会看到智能合约的正确输出。

Contract deployment: YourContractName

0
投票

我认为您在编写脚本之前已经启动了节点

npx hardhat node

通过编写上述代码关闭节点并再次打开它。就我的情况而言,它有帮助。


0
投票
const dutchAuction = await deploy("WFCoin", {
contract: "WFCoin",
from: deployer,
args: args,
log: true,
waitConfirmations: network.config.blockConfirmations || 6,});

我正在遵循教程,问题是最后一行,即

waitConfirmations: network.config.blockConfirmations || 6

删除对我有用的

© www.soinside.com 2019 - 2024. All rights reserved.