LoginSignup
10
11

More than 1 year has passed since last update.

Java: EasyBuggy / EasyBuggy Boot - Eclipseを使って同時に開発・デバッグする

Last updated at Posted at 2021-03-15

EasyBuggy / EasyBuggy Bootとは

メモリリーク、デッドロック、JVMクラッシュ、SQLインジェクションなど、バグや脆弱性の動作を理解するためにつくられたバグだらけのWebアプリケーションです。Apache 2.0ライセンスで公開されています。

EasyBuggyは基本的な技術のみが使われていますが、EasyBuggy BootはSpring Bootなどの新しい技術が使われています

やりたいこと

EasyBuggyEasyBuggy Bootを同時に実行・デバッグしたい。
具体的には下記のようなことを実現したい。

  • 伝統的なJavaのコードとSpring Frameworkに則ったコードを比較したい
  • それぞれのコードにおける脆弱性の修正を試みたい
  • それぞれの環境の切り替えのコストを下げたい

インストール

前提条件

Eclipseがインストールされていること。

また、GitとMavenがインストールされ、パスが通っていること。
下記のコマンドを実行することで確認が可能。

$ git --version
$ mvn -version

Eclipseプロジェクトの作成

EasyBuggy
$ git clone https://github.com/k-tamura/easybuggy.git
EasyBuggy Boot
$ git clone https://github.com/k-tamura/easybuggy4sb.git

Eclipseへのインポート

  1. File > Import を選択する
  2. Maven > Existing Maven Projects を選択し、Import Maven Projectsダイアログを表示する
  3. Select root directory に先ほどcloneしたフォルダ2つを選択する
  4. Finish ボタンを押す

スクリーンショット 2021-09-21 094505.png

EasyBuggyの独自設定

Serverを追加

  1. Serversビューを開き、右クリック。 New > Server を選択する
  2. Tomcat v8.5 Server(他のバージョンでも良いと思う)を選択し、Nextボタンを押す
  3. Available から easybuggy を選択する。Add ボタンを押して Configured に移動させる
  4. Finish ボタンを押す

ポートを変更

そのままでは、EasyBuggy Bootと利用しているポートが衝突するため、ポートを変更する。

  1. 追加されたサーバーをダブルクリックし、Overviewビューを表示する
  2. Portsタブ以下のPort Name:HTTP/1.1のPort Numberを任意の値に書き換える(例: 9080)

無題2.png

EasyBuggy Boot側のポートを変更するよりも、EasyBuggy側のポートを変更するほうが手軽だと思われる。
EasyBuggy Boot側のポートを変更する場合は、src/main/resources以下のapplication.propertiesを書き換える。

パスを変更

EasyBuggy内の一部のページは、パスを / (サーバールートパス)に設定しないと正常に動作しない。

  1. 追加されたサーバーをダブルクリックし、Overviewビューを表示する
  2. 下部の Modules を選択する
  3. Document Baseが easybuggy の行を選択する
  4. Edit... ボタンを押す
  5. Edit Web Module ダイアログにて、Pathを/に変更する

image.png

起動

EasyBuggy

Serversビュー内から追加されたサーバーを選択し、同ビュー内のStart the server in debug modeボタンを押す。
その後、下記にアクセスする。

EasyBuggy Boot

Package ExplorerからEasybuggy4sbApplication.javaを選択し、EclipseのツールバーのDebug Easybuggy4sbApplicationボタンを押す。
その後、下記にアクセスする。

まとめ

おつかれさまでした。

4aa67b63-a855-f17d-ff55-678187092f02.png

トラブルシューティング

EasyBuggy / EasyBuggy Bootの起動に失敗する場合

一度 mvn verify コマンドを実行することで、直ることがあります。

コマンドを実行した結果、下記のようなエラーで失敗することもあります。
しかし、これを無視して起動すると、成功することもあります。

No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

関連記事

10
11
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
10
11