Crowdsale kann nicht bereitgestellt werden

Wenn ich Truffle Migration mache, kann ich meinen Crowdsale-Vertrag bereitstellen, aber mein Token-Vertrag wird bereitgestellt, aber nicht der Crowdsale-Vertrag.

var Sportist = artifacts.require("./Sportist.sol");
var SportistCrowdsale = artifacts.require("./SportistCrowdsale.sol");


module.exports = async function (deployer) {
    let rate = 1;
    let wallet = "0x300c7b7198a772C2154e4f2a47C0d89407a95A8A";
    let token;
    let openingTime = Math.floor((new Date()).getTime()/1000);
    let closingTime = openingTime + 1 * 60 * 60 * 24;
    let cap = 500000;
    let goal = 50000;
    let tokenWallet = "0x300c7b7198a772C2154e4f2a47C0d89407a95A8A";

let a  = await deployer.deploy(Sportist, "Sportist", "S", 6, 2000000000)
 console.log("asdasdasdasdasdasdasdasdasdasd");
token = await Sportist.deployed().then(instance=>instance.address)



await deployer.deploy(SportistCrowdsale,
    rate, wallet, token,
    openingTime, closingTime,
    cap,
    goal,
    tokenWallet)

    const crowdsale = await DappTokenCrowdsale.deployed();


console.log("after deployement ");

};

In der Konsole wird das angezeigt

Using network 'development'.

Running migration: 2_deploy.js
  Replacing Sportist...
  ... 0x211c7f7e0678bacec29a7d8032ae8949faca2cc381586b8b541f5faf3804c1f9
  Sportist: 0x2fb7fa517002ca3a7af45deea0479f287d5089fb
Saving successful migration to network...
asdasdasdasdasdasdasdasdasdasd
  ... 0x760538642ffd049748b5bf3ff5624b0065e6b0e3bbbb1aaf99ad341de2bc99f1
  Deploying SportistCrowdsale...
Saving artifacts...

und der Crowdsale-Vertrag ist

pragma solidity ^0.4.24;

import "./crowdsale/distribution/RefundableCrowdsale.sol";
import "./crowdsale/distribution/PostDeliveryCrowdsale.sol";
import "./crowdsale/validation/CappedCrowdsale.sol";
import "./crowdsale/emission/AllowanceCrowdsale.sol";
import "./crowdsale/emission/StagedCrowsale.sol";

contract SportistCrowdsale is RefundableCrowdsale, CappedCrowdsale, PostDeliveryCrowdsale, AllowanceCrowdsale, StagedCrowsale {
    constructor(
        uint256 rate, address wallet, IERC20 token,
        uint256 openingTime, uint256 closingTime,
        uint cap,
        uint256 goal,
        address tokenWallet) 
        Crowdsale(rate, wallet, token)
        TimedCrowdsale(openingTime, closingTime)
        CappedCrowdsale(cap)
        RefundableCrowdsale(goal)
        AllowanceCrowdsale(tokenWallet)
        StagedCrowsale()
    public {}

    function() external payable {
        buyTokens(msg.sender);
    }
}
Können wir den Crowdsale-Vertragscode sehen?
Ich habe es jetzt bearbeitet.
Vertrag sieht gut aus! Verträge sind von OpenZeppelin Ich würde gerne noch ein paar Dinge von Ihnen wissen. Bereitstellen Sie im Hauptnetzwerk vor oder tun Sie so etwas wie 'trufflemigrate --network rinkeby' ? Beendet die Ausführung auch ohne Fehler oder bleibt sie für immer im Zustand „Artefakte werden gespeichert ...“?
Ich setze es auf Ganache ein.
Ich habe andere Leute mit dem gleichen Fehler gefunden. Es kann sich um einen zufälligen/zufälligen Fehler handeln. Überprüfen Sie dies und mein Rat an Sie ist, die Netzwerk-ID auf Ganache zu ändern oder 'migrate --reset --network different_networkID' zu versuchen. Gehen Sie schließlich einfach auf Ganache und klicken Sie auf die Schaltfläche Einstellungen und ändern Sie die Netzwerk-ID in etwas wie „5782“. Lass mich wissen, ob das funktioniert hat
nicht arbeiten Bruder
Gefunden die Antwort await wird in früheren Versionen nicht unterstützt. Es gibt sie nur in der Beta-Version.

Antworten (1)

Wir können die asynchrone Funktion in der neuen Truffle-Beta-Version verwenden. Ich aktualisiere also die Trüffel-Version, die Sie problemlos verwenden können. Ich habe auf die neue Beta-Version von Truffle aktualisiert