首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Ropsten网络上部署智能契约

在Ropsten网络上部署智能契约
EN

Stack Overflow用户
提问于 2019-12-05 03:04:06
回答 1查看 260关注 0票数 0

我正试图在Ropsten网络上部署一个测试合同。我正在使用元询问,恩弗拉和松露来创建和测试合同。我的文件夹结构如下所示

我的迁移文件有以下代码

代码语言:javascript
运行
复制
const TestContract = artifacts.require("TestContract");

module.exports = function(deployer) {
  deployer.deploy(TestContract);
};

当我运行松露迁移时,我得到了以下错误:无法从任何来源找到用于迁移的工件,

我的松露-config.js看起来如下

代码语言:javascript
运行
复制
    const HDWalletProvider = require('truffle-hdwallet-provider')
module.exports = {
    networks: {
        ropsten: {
            provider: function() {
                return new HDWalletProvider("Mnemonic key", "https://ropsten.infura.io/v3/API_KEY")
            },
            network_id: 3,
            gas: 4000000
        }
    },
    contracts_directory: './src/contracts/',
    contracts_build_directory: './src/abis/',
    compilers: {
        solc: {
            optimizer: {
                enabled: true,
                runs: 200
            }
        }
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-05 06:31:08

您需要在contracts文件夹中有Migrations合同:

代码语言:javascript
运行
复制
pragma solidity >=0.4.25 <0.6.0;

contract Migrations {
  address public owner;
  uint public last_completed_migration;

  modifier restricted() {
    if (msg.sender == owner) _;
  }

  constructor() public {
    owner = msg.sender;
  }

  function setCompleted(uint completed) public restricted {
    last_completed_migration = completed;
  }

  function upgrade(address new_address) public restricted {
    Migrations upgraded = Migrations(new_address);
    upgraded.setCompleted(last_completed_migration);
  }
}

也是迁移文件夹中的1_initial_migration.js

代码语言:javascript
运行
复制
const Migrations = artifacts.require("Migrations");

module.exports = function(deployer) {
  deployer.deploy(Migrations);
};
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59187593

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档