LoginSignup
0
0

breadboard (yale) のインストールで躓いた点とその解決方法

Posted at

「人間の行動を測定するとき,ネットワークを使いたい」
「ネットワークの形状によって,(従属変数)は異なるだろうか?」
といった関心に答えられるソフトウェアの一つが,breadboard です.

ネットワーク互恵性を研究していきたい私にとって,非常に重要なツールとなりそうな予感がするこのツール.
しかし,いざインストールしようとすると,どうにもうまくいかない...
ということで,同じように困った人,これから困る人向けに少しでも力になれるよう,この記事では私なりに躓いた点とその解決方法をご紹介します.
なお,私の使っているマシンが Windows 11 なので,以下では Windows を想定して説明します.

breadboard をインストールする

インストールの流れ

breadboard 公式にも書いてありますが,インストールの手順は以下です.

  1. JDK 8 をインストールする
  2. breadboard_v[X.X.X].zip をインストールする
  3. breadboard_v[X.X.X].zip を解凍する
  4. command prompt等で breadboard.bat を実行する
  5. お使いのブラウザ (e.g., Chrome) のリンク欄に http://localhost:9000 と入力して開発開始

では,一歩ずつ見ていきましょう.

JDK 8 をインストールする

コチラ にアクセスして,JDK をインストールしてください.

自分のマシンにあった JDK をインストールしましょう.

私は Windows の x64 なので,下線部のjdk をインストールしました.

image.png

(以下,画像の右側にキラキラしたアイコンや,かわいいアイコンが表示されますが,拡張機能によるものです.皆さんのPCに表示されなくても問題ないので,気にしないでください.)

ここをクリックして jdk をダウンロードしようとすると,Oracle のログイン画面が出てくると思います.
原則,アカウントがないとインストールできない(?)ので,住所や電話番号を入力してアカウントを登録し,その上でダウンロードしましょう.

ダウンロードしたら,ダウンロードした先のフォルダに移動して,jdk-8u381-windows-x64.exeをダブルクリックしてください.

image.png

ダブルクリックしたら,「次へ」か「完了」をひたすら押してください.
インストールが完了したら,次に進みましょう.

breadboard_v[X.X.X].zip をインストールする

breadboard 公式にアクセスし,上の方にある「INSTALL」ボタンを押してください.

(サイトがアップデートされたことによって,見た目が変わっている可能性があります.)

image.png

すると,以下のような画面になるはずなので,「DOWNLOAD PACKAGE」をクリックしてください.

image.png

ライセンスが表示されるので,同意する場合は「Email address」に自分のアドレスを入力して,「AGREE」を押してください.

image.png

すると,ダウンロード先にbreadboard_v[X.X.X].zip (私の場合はbreadboard-v2.3.1.zip) がダウンロードされているはずです.

image.png

breadboard_v[X.X.X].zip を解凍する

ダウンロードされていることが確認できたら,breadboard_v[X.X.X].zip を選択したうえで右クリック→「すべて展開...」→「展開」を選択してください.

image.png

zipファイルを展開したあとのフォルダを見てみると,以下のようなファイルがずらっと並びます.

image.png

command prompt等で breadboard.bat を実行する

breadboard.batがあるフォルダまで移動する

上記のファイル群のうち,breadboard.batを右クリック→「プロパティ」をクリックして,パスをコピーしましょう.

image.png

次に,「Windowsキー」を押して,「cmd」と入力,「Enter」を押すことで,コマンドプロンプトを押してください.

image.png

その後,立ち上がったら cd breadboardのパスを入力して,Enterを押してください.

image.png

breadboard.batを実行する

次に,breadboard-v.X.X.Xフォルダを開いて,breadboard.bat をコマンドプロンプトにドラッグして Enterを押してください.

image.png

すると breadboard のセットアップが完了する...はずなんですが,command prompt が立ち上がってもすぐ落ちる...
私はここで躓きました.

解決手順(ChatGPTにどんな質問をして解決したか!)はこの記事の補足で説明していますが,結論からいうと,breadboard.batの中身を以下のように変更することで解決します.

中身の変更の仕方がわからない方は,テキストエディタでバッチファイルを開く方法 | TECH PROjinをご参照ください.

@ECHO OFF &SETLOCAL
rem Parse the output of java --fullversion into an integer
for /f tokens^=2-5^ delims^=.-_^" %%j in ('java -fullversion 2^>^&1') do set "jver=%%j%%k%%l%%m"

rem Set java options for jdk9 and later
if %jver% GEQ 19000 (set "_JAVA_OPTIONS=")

rem run the breadboard server
java -cp "./lib/*;" -Dhttps.port=9443 -Dapplication.secret="pleasechangethis" -Dconfig.file=conf\application-prod.conf -Xms1024m -Xmx1024m -XX:ReservedCodeCacheSize=128m -XX:+CMSClassUnloadingEnabled -XX:+UseConcMarkSweepGC play.core.server.NettyServer

その上で上記と同様の手続き(breadboard.batがあるフォルダまで cd で移動し,breadboard.batを実行)をすると,以下のような画面になります.

image.png

このような画面になったら,次のステップに進みましょう.

ブラウザのリンク欄に http://localhost:9000 と入力

image.png

リンク欄に入力したら,Enterを押すと,以下のような画面になります.

image.png

この画面で必要事項を記入したら,「Create」ボタンを押しましょう.

image.png

この画面に遷移したら,セットアップは完了です!
お疲れ様でした.

補足:breadboard.bat の解決手順

cmd で独立で立ち上げてからbat file を実行することでエラーの内容を見てみました.

image.png

色々と試行錯誤やら検索やらしたんですが,さっぱりわからん...
ということで,ChatGPTに聞いてみました.

以下の bat file を実行しました.

@ECHO OFF &SETLOCAL
rem Parse the output of java --fullversion into an  integer
for /f tokens^=2-5^ delims^=.-_^" %%j in ('java -fullversion 2^>^&1') do set "jver=%%j%%k%%l%%m"

rem Set java options for jdk9
if %jver% GTR 19000 (set _JAVA_OPTIONS="--add-modules=javafx.controls")

rem run the breadboard server
java -cp "./lib/*;" -Dhttps.port=9443 -Dapplication.secret="pleasechangethis" -Dconfig.file=conf\application-prod.conf -Xms1024m -Xmx1024m -XX:ReservedCodeCacheSize=128m -XX:+CMSClassUnloadingEnabled -XX:+UseConcMarkSweepGC play.core.server.NettyServer

すると,以下のエラーメッセージが cmd 上で表示されました.

Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0
Unrecognized option: --add-modules=java.xml.bind
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

どうすればいいですか.

ChatGPT

このエラーメッセージは、Java仮想マシン(JVM)のオプションが正しく設定されていないことを示しています。具体的には、--add-modules=java.xml.bindオプションが認識されていないと言っています。また、MaxPermSize=256mオプションもJava 8以降ではサポートされなくなっているため、無視されています。

問題を解決するために、次の手順を試してみてください。

--add-modules=java.xml.bindオプションを削除するか、より新しいJavaバージョンでサポートされるオプションに変更します。具体的なオプションはJavaのバージョンに依存します。バージョン9以降では、--add-modulesオプションが使われないことがあります。必要な場合は、Javaのバージョンに合わせて適切なオプションを設定してください。

MaxPermSize=256mオプションも削除することをお勧めします。このオプションはJava 8までで使われており、Java 9以降では無視されます。そのため、不要な警告を回避するために削除することができます。

修正したバッチファイルのコードは次のようになります。

@ECHO OFF &SETLOCAL
rem Parse the output of java --fullversion into an integer
for /f tokens^=2-5^ delims^=.-_^" %%j in ('java -fullversion 2^>^&1') do set "jver=%%j%%k%%l%%m"

rem Set java options for jdk9 and later
if %jver% GEQ 19000 (set "_JAVA_OPTIONS=")

rem run the breadboard server
java -cp "./lib/*;" -Dhttps.port=9443 -Dapplication.secret="pleasechangethis" -Dconfig.file=conf\application-prod.conf -Xms1024m -Xmx1024m -XX:ReservedCodeCacheSize=128m -XX:+CMSClassUnloadingEnabled -XX:+UseConcMarkSweepGC play.core.server.NettyServer

この修正により、バッチファイルはJava 9以降でも正常に実行できるはずです。必要に応じて、Javaのバージョンに合わせてオプションを調整してください。また、バッチファイル内の他の設定も確認してください。

ほんとかよ...と思ったら,本当に動きました.
ChatGPTさん,凄いですね.

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0