Ich habe im Grunde dieses Zeppelin-Crowdsale-Tutorial befolgt , nur die Namen der Verträge geändert. Ich konnte erfolgreich auf einem lokalen Ganache bereitstellen, aber wenn ich dann versuche, es im Live-Ethereum-Netzwerk bereitzustellen, schlägt es auf fehl invalid address
, anscheinend durch Migration ausgelöst 1_initial_migration.js
, was so aussieht:
var Migrations = artifacts.require("./Migrations.sol");
module.exports = function(deployer) {
deployer.deploy(Migrations);
};
und Migrations.sol sieht so aus:
pragma solidity ^0.4.17;
contract Migrations {
address public owner;
uint public last_completed_migration;
modifier restricted() {
if (msg.sender == owner) _;
}
function Migrations() 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);
}
}
Hier ist ein Screenshot vom Terminal, wo truffle migration
fehlschlägt:
Wie ist es möglich, dass ich Ganache bereitstellen kann, aber nicht im Live-Netzwerk? Mache ich etwas falsch? Irgendwelche Vorschläge?
Ich hatte ein ähnliches Problem, das ich lösen kann, nachdem ich JSON-Dateien aus /build/contracts
. Dann habe ich versucht, den Vertrag erneut bereitzustellen, und es wurde erfolgreich durchgeführt.
Schaharsol
--light
Modifikator. kann das der grund sein?Nikita Fuchs
Lauri Peltonen