Ich versuche, den MultisigWallet-Vertrag auf bereitzustellen testrpc
. Ich kann jedoch nicht herausfinden, wie der address[] _owners
Konstruktorparameter im Bereitstellungsbefehl bereitgestellt wird.
Ich habe mehrere Dinge ausprobiert, von denen mir die folgenden am logischsten erschienen:
var MultisigWallet = artifacts.require("./MultisigWallet.sol");
module.exports = function(deployer) {
deployer.deploy(MultisigWallet, ["0x7cb7..."], 0, 10000);
};
Beim Ausführen truffle migrate
erhalte ich folgenden Fehler:
> Error encountered, bailing. Network state unknown. Review successful
> transactions manually. Error: The contract code couldn't be stored,
> please check your gas amount.
> at Object.callback (C:\...\node_modules\truffle\node_modules\web3\lib\web3\contract.js:147:46)
> at C:\...\node_modules\truffle\node_modules\web3\lib\web3\method.js:142:25
> at C:\...\node_modules\truffle\node_modules\web3\lib\web3\requestmanager.js:89:9
> at XMLHttpRequest.request.onreadystatechange (C:\...\node_modules\truffle\node_modules\web3\lib\web3\httpprovider.js:118:13)
> at XMLHttpRequestEventTarget.dispatchEvent (C:\...\node_modules\truffle\node_modules\xhr2\lib\xhr2.js:64:18)
> at XMLHttpRequest._setReadyState (C:\...\node_modules\truffle\node_modules\xhr2\lib\xhr2.js:354:12)
> at XMLHttpRequest._onHttpResponseEnd (C:\...\node_modules\truffle\node_modules\xhr2\lib\xhr2.js:509:12)
> at IncomingMessage.<anonymous> (C:\...\node_modules\truffle\node_modules\xhr2\lib\xhr2.js:469:24)
> at emitNone (events.js:91:20)
> at IncomingMessage.emit (events.js:185:7)
Wenn mir jemand weiterhelfen könnte:
deployer.deploy()
an orMultisigWallet
on local testrpc
mit truffleBearbeiten: Für das MultisigWallet beziehe ich mich auf Zeppelins https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts/MultisigWallet.sol
Die Zeppelin MultiSigWallet.sol implementiert keine changeOwner
in der MultiSig.sol definierte Schnittstelle (die sie erbt). Dies könnte die Fehlerursache bei der Bereitstellung sein.
Erwähnenswert ist, dass der MultiSigWallet-Vertrag jetzt aus dem Zeppelin-Repo entfernt wurde . Sie schlagen vor, stattdessen den neuesten Multisig-Vertrag von Consensys zu verwenden .
rstormsf
Nsieben
rstormsf
gas
Wert ist.{networks: {"main": {gas: 4712388 }}}