Zum Hauptinhalt springen

Voraussetzungen

  • Node.js 16+
  • Vertrautheit mit Ethereum-Entwicklung
  • Eine Wallet mit Testnet-Tokens (siehe Testnet-Chain-Details)

Vertragsvorbereitung

Der folgende Beispielvertrag wird in diesem Leitfaden verwendet:

Mit Foundry deployen

Foundry ist ein schnelles, Rust-basiertes Toolkit für die Ethereum-Entwicklung.
  1. Foundry installieren:
    Sie müssen ggf. Ihre .bashrc- oder .zshrc-Datei sourcen.
  2. Ein neues Foundry-Projekt einrichten:
  3. foundry.toml mit Plasma-Testnet-Einstellungen aktualisieren:
  4. Eine .env-Datei im Projekt-Root erstellen:
  5. Die Umgebungsvariablen laden:
  6. Den Vertragscode als src/SimpleStorage.sol speichern und dann deployen:
    Foundry gibt den Hash der Deployment-Transaktion und die Vertragsadresse aus:
  7. Testen Sie Ihren deployten Vertrag mit Foundrys cast-Tool. Lesen Sie zunächst die gespeicherten Daten:
  8. Aktualisieren Sie dann die Daten und lesen Sie sie erneut:
    Das sollte etwa Folgendes ausgeben:

Mit Hardhat deployen

Hardhat ist ein voll ausgestattetes Entwicklungs-Framework mit umfangreichem Plugin-Support.
  1. Stellen Sie sicher, dass Sie Folgendes haben:
  • Node.js 20+ (erforderlich für moderne Hardhat-Kompatibilität)
  • Vertrautheit mit Ethereum-Entwicklung
  • Eine Wallet mit Testnet-Tokens (siehe Testnet-Chain-Details)
Node.js 18 und älter werden von Hardhat nicht mehr unterstützt und können ES-Modul-Kompatibilitätsprobleme verursachen.
  1. Node.js-Version überprüfen:
    Wenn Sie Node.js 18 oder älter verwenden, aktualisieren Sie auf Node.js 20+:
  2. Ein neues Hardhat-Projekt initialisieren:
    Wenn Sie auf Kompatibilitätsprobleme stoßen, prüfen Sie die Hardhat-Dokumentation auf die neuesten unterstützten Versionen.
    Wählen Sie Create a JavaScript project, wenn Sie dazu aufgefordert werden.
  3. hardhat.config.js aktualisieren:
  4. Eine .env-Datei im Projekt-Root erstellen:
  5. Scripts-Verzeichnis und Deployment-Skript erstellen:
  6. scripts/deploy.js erstellen:
  7. Den Vertragscode als contracts/SimpleStorage.sol speichern und dann deployen:
  8. Sie sind fertig!

Mit Ethers.js deployen

Ethers.js bietet einen minimalen, programmatischen Deployment-Flow.
  1. Ein neues Projekt erstellen:
  2. Eine .env-Datei im Projekt-Root erstellen:
  3. compile.js erstellen, um Ihren Solidity-Vertrag zu kompilieren:
  4. Ihren Vertrag als SimpleStorage.sol speichern und dann kompilieren:
    Das sollte Folgendes ausgeben:
  5. deploy.js erstellen:
  6. Das Deployment-Skript ausführen:
    Das sollte etwa Folgendes ausgeben:

Deployment überprüfen

Nach dem Deployment mit einer der obigen Methoden verifizieren Sie Ihre Vertrags-Bereitstellung.

Fehlerbehebung

ES-Modul-Kompatibilitätsprobleme

Wenn Sie auf Fehler wie Error [ERR_REQUIRE_ESM]: require() of ES Module stoßen, bedeutet das normalerweise:
  1. Node.js-Version ist zu alt: Aktualisieren Sie auf Node.js 20+, wie in den Voraussetzungen erwähnt
  2. Versionsabweichung bei Abhängigkeiten: Wenn ein Upgrade von Node.js nicht möglich ist, können Sie die problematische Abhängigkeit downgraden:

Node.js-Versionswarnungen

Wenn Sie Warnungen über nicht unterstützte Node.js-Versionen sehen:
Aktualisieren Sie auf Node.js 20+ gemäß den Schritten im Abschnitt Voraussetzungen.

Unzureichende Mittel

Stellen Sie sicher, dass Ihre Wallet genügend Testnet-Tokens hat. Besuchen Sie einen Testnet-Faucet.

Falsche Netzwerkkonfiguration

Überprüfen Sie, ob Ihre Netzwerkkonfiguration mit den Testnet-Chain-Details übereinstimmt.

Gas-Schätzungsfehler

Setzen Sie explizite Gas-Limits in Ihrer Deployment-Konfiguration: