Corda DemoBench

デモベンチ

DemoBenchは、ローカルでCordaノードを簡単に構築、起動できるスタンドアロンのデスクトップアプリケーションです、デモ、または単なる実験に役立ちます。

ダウンロード

Cordaの最新リリースと互換性のあるインストーラーは、Corda websiteからダウンロードできます 。

DemoBenchの実行

各ノードには、ネットワークマップサービスで識別するための一意の名前が必要です。DemoBenchは、使用するノード名、最も近い都市、ローカルvaultの番号の提案をします。最初のノードはNotaryです。したがって、Servicesリストで選択できるのはNotaryサービスのみです。それ以降のノードでは、Cordaの他の組み込みサービスを選択することもできます。DemoBenchは、ターミナル・エミュレータで各新しいノードを起動します。ノードの起動が終了するまで、View DatabaseLaunch ExplorerLaunch Web Serverボタンはすべて無効になります。その後、DemoBenchは、そのキャッシュ残高などのノードに関する簡単な統計情報を表示します。ユーザがノードのshellプロンプトで「bye」と入力したためなど、終了したノードを再起動することは現在のところDemoBenchからは不能です。しかし、そのノードのデータとログはそのディレクトリに残っています。

DemoBenchを終了すると、起動したすべてのノードとエクスプローラーが自動的にシャットダウンされ、終了します。DemoBenchの現在実行中のすべてのノードの構成とCorDapps ZIPを、次のレイアウトのファイルであるプロファイルに保存できます。

notary/
node.conf
cordapps/
banka/
node.conf
cordapps/
bankb/
node.conf
cordapps/
example-cordapp.jar
...

 

DemoBenchがこのプロファイルをリロードすると、現在実行中のノードをすべて閉じて、代わりにこれらの新しいノードを起動します。すべてのノードは、新しいデータベースで作成されます。各プロファイル内のnode.confファイルは、JSON/HOCON形式であることに注意してください。

DemoBenchはログファイルを以下の場所に書き込みます。

|MacOSX/Linux|$HOME/demobench/demobench.log| |Windows|%USERPROFILE%Demobench\demobench.log|

 

インストーラーの構築

GradleはJavaPackagerを使ってDemoBenchインストーラをビルドするタスクを定義しています。これらのタスクを実行するためのスクリプトは、Cordaリポジトリのtools/demobenchディレクトリに3つあります。

  • package-demobench-exe.bat (Windows)
  • package-demobench-dmg.sh (MacOS)
  • package-demobench-rpm.sh (Fedora/Linux)


各スクリプトは該当プラットフォーム上でのみ実行可能であり、各スクリプトはプラットフォームのインストールツールが既に利用可能であることを前提としています。

  • Windows: Inno Setup 5+
  • MacOS:パッケージングツールは自動的に利用できるはずです。パッケージャーがキーリング上に秘密鍵を持つ有効なDeveloper ID Application証明書を見つけた場合、DMGの内容も署名されます(デフォルトでは、DemoBenchのbuild.gradleは、署名鍵のユーザー名を "R3CEV "とします)。このような証明書は、証明書署名要求を生成してから、ローカルの「Appleチームのエージェント」に依頼して、Apple Developerポータルにアップロードすることで作成できます。(こちらを参照)。

 

  • /usr/bin/codesignアプリケーションが常に証明書の署名鍵にアクセスできるようにしてください。MacOS Keychain Accessアプリケーションを介して変更を行った後、Macを再起動する必要があるかもしれません。
  • MacOS上でDemoBenchをビルドするには、JDK >= 8u152を使用する必要があります。このバージョンでは、各Cordaノードの起動時にターミナルに表示される警告メッセージが解決されるからです。
  • JetBrains JDKを使用してDMGをビルドしすることが理想的です。
  • Fedora/Linux: rpm-build パッケージ。
    また、環境変数 JAVA_HOME を定義して、Gradle の実行に使用しているのと同じ JDK を指すようにする必要があります。インストーラは tools/demobench/build/javapackage/bundles ディレクトリに書き込まれ、他のアプリケーションのプラットフォームと同じようにインストールできます。

JetBrains JDK

Macユーザーは、DemoBench DMGをビルドする最良の方法は、BinTrayからバイナリをダウンロードできるJetBrains JDKを使用することです。このJDKには、いくつかの便利なGUIの修正があります。特に、このJDKでビルドした場合、DemoBenchターミナルは絵文字をサポートし、より良い色のANSIプログレスレンダラーをサポートします。また、Windows上でのHiDPIレンダリングに関するいくつかの問題も解決されています。

このJDKにはJavaPackagerが含まれていないため、Oracle JDKから$JAVA_HOME/lib/ant-javafx.jarをJetBrains JDK内の対応するディレクトリにコピーする必要があります。

 

開発者メモ

毎回新しいインストーラを構築せずにDemoBenchを実行したい開発者は、Gradleを使ってローカルにインストールすることができます。

$ gradlew tools:demobench:installDist
cd tools/demobench/build/install/demobench
$ bin/demobench


残念ながら、DemoBenchの$CLASSPATHはWindowsシェルには長すぎるかもしれません。その場合でも、以下のようにDemoBenchを実行することができます。

java -Djava.util.logging.config.class=net.corda.demobench.config.LoggingConfig -jar lib/demobench-$version.jar


DemoBenchはIDE内で実行することができますが、user.dirシステム・プロパティの値(すなわち、JVMの現在の作業ディレクトリ)に相対する正しい場所に、実行時のすべての依存関係を事前にインストールするのは開発者次第です。

corda/
corda.jar
corda-testserver.jar
explorer/
node-explorer.jar
cordapps/
bank-of-corda.jar

 

原文:Corda DemoBench

この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています