プライベートチェーンで、技術ブロックチェーンの発展と私たちの前の広場プラットフォームイーサネット専用開発ブロックチェーンプロセスチェーンだけでなく、採掘作業では、ブロック・チェーン・テクノロジーは、ビットコインを使用するように限定されるものではなく、将来は2.0倍を表すブロックチェーンインテリジェンス契約を開くために、他の領域に拡張ピント合わせの拡大に注力していきます。GETHクライアントがイーサネット・ネットワーク・スクエアと対話してアプリケーションの開発プラットフォームとしてリミックスのこの選択は、次の記事は、ガナッシュのトリュフと(何かである)開発フレームワークを構築するために代わりに使用されます。
この記事は2つの部分のインテリジェントなアプリケーションを構築し、展開するリミックス-IDE契約を分けています。
、リミックス-IDEのビルド
[製造例]
1.インストールNode.js. ノードには、JavaScriptのランタイム環境を提供し、さまざまな機能に分け拡張モジュールの多くは、アプリケーション開発を簡素化が含まれています。
①Node.jsのは、命令の段階に応じて、以下のURLからダウンロードして、あなたの指定したフォルダに一歩をインストールします。
https://nodejs.org/en/download/
インストールが完了したら②、オープンなオペレーティング環境でcmdは、DOSのコマンド入力を入力します:
ノード--version
これは、ノードが正常にインストールされていることを意味します。
次のように2.node.jsインストールが正常に完了した後、コンテンツを含むフォルダの設置位置は以下のとおりです。
可視ノードはNPM管理ツールが含まれている、我々はここで使用しているローカルでの使用のために、サードパーティ製のサーバ機能をダウンロードするNPMパッケージです。
[ビルド]リミックス
良い準備の後、我々はリミックス環境を構築するために始めました。
1.マシンにリミックスをダウンロード:
:新しいフォルダ、コマンド入力に(別のフォルダを確立するためには、そのようなトレーサビリティは、ファイルをダウンロード)
gitのクローンhttps://github.com/ethereum/remix-ide.git
ダウンロードが成功した後2.フォルダは、フォルダの中に、リミックス-IDEを含み、フォルダ内の複数のフォルダを生成します。
CDのリミックス-IDE
その後インストールキットに必要:
NPMインストール
実行開始コマンド:
標高開始
(私はここではビルド環境に遭遇していないので、問題を解決するには余りにも困難であり、いくつかの小さな問題は覚えていないことができますが、私は解決することができる恐れ)
3.インストールがインストールされ、ローカルサーバを起動され、その後、ブラウザを開こうとすることができます。
URLを入力します。http://127.0.0.1:8080
[ここに私の問題]
すべてがとても美しく見える、私は他の人の問題が発生し、解決会った、他の人は私が遭遇した問題が発生し、また、解決していない、しかし、ブラウザを開くことができない、常に開くことができませんでした、接続が失敗した示しています。ほぼ3日後に熟考し、様々な解決策を求めているでは、誤って応答が見つかりました:
コマンドを入力します。
NPMのhttpサーバをインストールします
HTTPサーバのNode.jsの使用は、ローカルサービスを有効にすると、ブラウザが開きます。達成し、最終的な効果はこれです:
第二に、スマートでシンプルなアプリケーション展開の契約
上記のビルドプロセスリミックスブラウザの開発環境に基づいており、次のステップは、インテリジェントな開発プラットフォームによって契約を記述することで、民間チェーン上に展開、ステップ動作によるステップは、契約の知的内容を実行しているのより深い経験を持っているために行われます。
インテリジェント契約の調製
①スマート契約条件を入力します。
②solファイルにコンパイル
コンパイラはエラーが表示されますページの左下に問題が発生した場合、私が書かれている点に対応する修正することができます。
③対応するパラメータを取得します
コンパイルが成功した後、次のことを示します。
左下にある赤いボックスの内容は、以下の詳細を、メニューを開くことに注意してください:
内容をコピーして、内容を保存するメモ帳を開き、バイトコードを置くために、次の「バイトコード」の掲示板をクリックします。
保存共感し、次の「ABI」掲示板をクリックしてください。
これらの2つのパラメータは、バックでスマート契約の展開で使用されます。
2.インテリジェント契約の展開
GETHコンソール、リミックス-IDE:スマート契約の展開は、2つの領域に分割され
[コンソール] GETH
①民間チェーンの前に設定の作成と初期化ブロックGETHコンソール操作に導入され、.jsonファイルの情報を含むブロックは、あなたが初期化を必要としない変更されていない場合は、コンソールに直接行くことができます:
GETH --datadir ./data/00 --networkid xxxxxは--port xxxxの--rpc --rpcport XXXX --rpccorsdomain "*" コンソール--allow-安全でないロック解除
1人の説明によるワン:
コンソールに入る前に明白なフレーズや命令が異なります。
まだ同じを--networkidと、前のブロック.jsonファイルIDの作成は、これは何が何であるかであります
--portポート番号、自分自身、固定装置を回避することができ、ポート番号を設定することができます
リミックスブラウザのリンクの--rpcportローカルRPCポート番号は、後述します
ユーザーがコンソールに入る前に戻って便利、安全でないロック解除ロックを解除できるように設定し、バックに展開する際の主契約、これは、アカウントのロックを解除することが求められますされ--allow-安全でない、ロックを解除
②成功しGETHコンソールに入りました
③コンソールを入力した後、最初に新しいアカウントを作成します。
④操作のリミックスがアカウントに行われるの背後にあるので、アカウントのロックを解除:
:最初のパラメータは、あなたが選択する複数のアカウントを持っている場合、その後、あなたは次の操作を行うことができ、場所に直接coinbase使用することができ、現在唯一のアカウントを持っているので、アカウントは基本的なアカウントですので、オブジェクトのロックを解除し、括弧内にあります
コマンドを入力します。eth.accountsが表示され、現在のすべてのアカウント
入力コマンド:personal.unlockAccount(eth.account [i]は、 "XXXX"、* 60 * 30 1000)は、+ 1すなわちXXXXのアカウントパスワード最初のiのロックを解除する時間は約1000 * 60 * 30ミリ秒(等価であるロックを解除しますつまり、30分)
【リミックス-IDE】
①「web3プロバイダ」として「環境」を選択します
②順を追って説明上記のステップは、接続障害が発生していないここで問題のテキストに基づいてそうするように、またはGETHは、コンソールを入力するように上記の要件に従わない場合は、次のエラーメッセージが表示されます:
web3プロバイダに接続することはできません
(もう一度上記やる再びヒントを覚えています)
③web3プロバイダがボックスを促すメッセージが表示されますクリックしてください。
ポート番号のパラメータは指示に従って完了したときに、これは前述の--rpcportで、ポート番号は非常に精通していないことに注意してくださいここではそれ以外の場合は接続失敗のエラーメッセージが表示され、エラーがコンソールに入りませんでした。
すべてがうまくいけば④[OK]をクリックして、あなたは、ページの左側に関連するパラメータが自動的にGETHコンソール下のコンテンツとして取り込まれるでしょう。
その後、314590平方イーサネットネットワークアップに対応したスマート契約helloworld.solのたnetworkIDを展開する「展開」をクリックしてください。
⑤GETHは、上記の操作に応じて実行した場合、これは通常の保留表示されますが、そうでない場合は、アカウントのロックが解除され、エラーが表示されます。
保留は、契約が解決されることを示しています。これは何を意味するのでしょうか?これは、契約が展開されていない、ネットワーク全体で認識されていないことを意味します。
方法は?私たちは、展開の契約は、貿易の方法で実装されていることを知って、契約がネットワーク全体を検証するように、採掘作業の手順を実行することが必要です。だから我々は、コマンドを入力して、コンソールをGETHに戻ります。
miner.start()
また、適切な応答をリミックスしながら、ゲスは、鉱山で見つかりました:
検証に成功採掘契約を表し、そして民間のチェーンが上がるために配備しました。
⑥も行う二つのパラメータの上にメモ帳で私たちを救うために覚えていますか?バイトコードとABI
次GETHコンソールを入力します。
コード=「バイトコードの内容」
ABI = ABIのコンテンツ
(コード内容二重引用符であることを、ABIせず、慎重にヨーヨーを見て)
⑦入力コマンド:
mycontract = eth.contract(ABI)
契約= mycontract.new({から:eth.coinbase、データ:コード、ガス:1000000})
⑧契約が作成されますが、また採掘を展開する必要があります。
miner.start()
⑨知的契約を呼び出そう:
契約。は.call関数名(関数のパラメータに対応する契約内容)
うまくいけば、そこに結果に対応するだろうが、私は成功していない、常に示しています。
必要なガスが許容XXXを超えます
あなたはこの記事を参照してあれば、対応するソリューションは、感謝の指針を歓迎しています。
ここで私は成功しませんでしたが、Windows環境に記載された対応する手順が表示されますのですることは説得力がないが、次の記事では、スマート契約を展開するために再試行する方法とトリュフのガナッシュを使用します。(この成功は、〜心配しないでください)
以上、私を修正してください