Go-Ethereum
如何使用 geth cli 部署編譯後的合約文件?
所以我已經按照這裡的歡迎契約教程將契約部署到我的私有云。它工作得很好,但是我需要從我的契約中創建一個字元串然後部署它是相當困難的。
contract.sol
如果我可以創建一個文件並編譯它會更容易。所以我把歡迎程式碼放到一個文件中:
contract mortal { address owner; function mortal() { owner = msg.sender; } function kill() { if (msg.sender == owner) selfdestruct(owner); } } contract greeter is mortal { string greeting; function greeter(string _greeting) public { greeting = _greeting; } function greet() constant returns(string) { return greeting; } }
並執行以下命令:
solc --optimize --bin contract.sol
這將創建兩個新文件:
greeter.bin mortal.bin
但從這裡我有點迷路了。有人知道我如何使用
geth
這兩個 bin 文件部署這個歡迎契約嗎?歡迎所有提示!
geth Javascript 控制台更適合互動使用,當直接用 solc 編譯時,RPC 通常是更好的選擇。要部署合約,請參閱:
https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_sendtransaction
您可以編寫一個簡單的 bash 腳本來編寫 json 參數並傳入正確的數據。
試試web3 CLI 工具,你可以執行:
web3 contract deploy greeter.bin
這將部署並返回合約地址。
還可以建構:
web3 contract build greeter.sol