Solidity(1)VS Code環境を設定します.


設定


npm install -g truffle
truffle init
npm install -g ganache-cli
ganache-cli version
ganache-cliバージョンを実行すると、次の画面を出力してtestrPCに接続し、仮想ブロックチェーンネットワークとインタラクティブになります.

truffle-config.js

module.exports = {
   networks: {
    development: {
      host: "127.0.0.1",
      port: 8545,
      network_id: "*"
    }
  },
  compilers: {
    solc: {
      version: "0.8.13"
    }
  }
};
truffle suite

「加那修はtestrPCの新しい名前です」

ポートの変更


Truffleスイートを使用する場合
truffle-config.js->Port 7545に変更
Ganacheを実行するとtruffle-configになります.jsプロジェクトのインポート

契約の配布


Ethernetにスマート・チャネルを導入するには、
次のようにコンパイル→アンロード処理を行います.
  • contract/.sol契約ファイル
  • の作成
    // SPDX-License-Identifier: MIT
    pragma solidity >=0.4.22 <0.9.0;
    contract Faucet {
        uint public funds = 1000;  // 양수만 가능
        int public counter = 0;
        uint32 public test = 4294967295;
    }
  • truffle migrate
  • migration/.js移行ファイル
  • の作成
    const Migrations = artifacts.require("Migrations");
    module.exports = function (deployer) {
      deployer.deploy(Migrations);
    };
    truffle migrateを実行すると、調整と移行が行われます.
    作成されたスマート契約はtestrPCに配備され、採掘情報が更新されます.
    Compiling your contracts...
    ===========================
    ✓ Fetching solc version list from solc-bin. Attempt #1
    ✓ Downloading compiler. Attempt #1.
    > Compiling ./contracts/Migrations.sol
    > Artifacts written to /Users/jidoil/study/solidity/build/contracts
    > Compiled successfully using:
       - solc: 0.8.13+commit.abaa5c0e.Emscripten.clang
    
    
    Starting migrations...
    ======================
    > Network name:    'development'
    > Network id:      5777
    > Block gas limit: 6721975 (0x6691b7)
    
    
    1_initial_migration.js
    ======================
    
       Deploying 'Migrations'
       ----------------------
    ✓ Transaction submitted successfully. Hash: 0xddb03a9a328d9eb41405c9a554b94e756e8207188f4f09027ad89d683cbe0e1a
       > transaction hash:    0xddb03a9a328d9eb41405c9a554b94e756e8207188f4f09027ad89d683cbe0e1a
       > Blocks: 0            Seconds: 0
       > contract address:    0xE2BaE6Cf486E932409d74a509920ce42370656Ea
       > block number:        1
       > block timestamp:     1649288487
       > account:             0x9972d837705931317eE4b11D353ceA312064F741
       > balance:             99.99502292
       > gas used:            248854 (0x3cc16)
       > gas price:           20 gwei
       > value sent:          0 ETH
       > total cost:          0.00497708 ETH
    
       ✓ Saving migration to chain.
    ✓ Transaction submitted successfully. Hash: 0xfbbf7b6e89ff07ea5252fdf6d907d0df45787d269b24a578745773ac867b7fb9
       > Saving migration to chain.
       > Saving artifacts
       -------------------------------------
       > Total cost:          0.00497708 ETH
    
    Summary
    =======
    > Total deployments:   1
    > Final cost:          0.00497708 ETH
    下図に示すように、テストRPCのスマート契約が復号されていることが確認できます.