Truffle 使用已安装的包
已安装的包将放在项目文件夹中的 installed_contacts目录中,如果目录不存在,ethpm将创建它。这个目录类似于npm的 node_modules目录,通常不应该修改里面的内容。
要使用已经安装的包(合约),可以使用 import或 require导入。
下面的例子,将从 owned包导入 owned.sol合约。
pragma solidity ^0.4.2; import"owned/owned.sol"
; contract MyContract is owned { // ... }
类似地,下面的迁移脚本文件将使用 ens包中的 ens.sol合约:
文件: ./migrations/2_deploy_contracts.js
var
ENS = artifacts.require
("ens/ENS"
);var
MyContract = artifacts.require
("MyContract"
); module.exports = function
(deployer) { // Only deploy ENSif
there's not already an address already. // i.e., don't deploy
if
we're using the canonical ENS address, // butdo
deploy itif
we're on a test network and ENS doesn'
t exist. deployer.deploy
(ENS, {overwrite:false
}).then
(function() {return
deployer.deploy
(MyContract, ENS.address); }); };
Ropsten 测试网络以太坊社区的包注册中心目前存在于Ropsten测试网络上。要把包发布到包注册中心,需要配置好Ropsten网络。配置Ropsten网络,我们需要设置好账户地址,连接到以太坊节 ...