Edited at

JavaからAkkaハンズオンの準備手順

JavaからAkkaを触ってみるハンズオンの準備手順です。


準備の流れ


  1. 必要なソフトウェアのインストール(JDK/Maven/IntelliJ IDEA/HTTPie)

  2. ソースコードの取得

  3. テストの実行

  4. サーバーの起動

  5. APIの動作確認

  6. IntelliJ IDEAへのソースコードの取り込み


1.必要なソフトウェアのインストール


2.ソースコードの取得

git clone git@github.com:yugolf/akka-in-action-java.git


3.テストの実行


  • 取得したソースコードのakka-in-action-java/chapter-up-and-runningディレクトリで実行


テストの実行

mvn test



実行結果

[INFO] Scanning for projects...

[INFO]
[INFO] --------------------------< com:goticks-java >--------------------------
[INFO] Building goticks-java 1.0
[INFO] --------------------------------[ jar ]---------------------------------

(省略)

Results :

Tests run: 14, Failures: 0, Errors: 0, Skipped: 0

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 12.740 s
[INFO] Finished at: 2018-12-08T23:19:20+09:00
[INFO] ------------------------------------------------------------------------



4.サーバーの起動


  • 取得したソースコードのakka-in-action-java/chapter-up-and-runningディレクトリで実行


    • 動作確認後、Enterで終了




サーバーの起動

mvn compile exec:exec



5.APIの動作確認


  • 2つのHTTPリクエストを送信し次のようなレスポンスが得られればOK(HTTPieを使用した場合の例)


(1)イベントの作成


HTTPリクエスト

http POST localhost:5000/events/JJUG/ tickets:=5



HTTPレスポンス

HTTP/1.1 201 Created

Content-Length: 27
Content-Type: application/json
Date: Sat, 08 Dec 2018 14:36:29 GMT
Server: GoTicks.com REST API

{
"name": "JJUG",
"tickets": 5
}



(2)イベント一覧の取得


HTTPリクエスト(イベント一覧)

http GET localhost:5000/events/



実行結果

HTTP/1.1 200 OK

Content-Length: 40
Content-Type: application/json
Date: Sat, 08 Dec 2018 14:37:24 GMT
Server: GoTicks.com REST API

{
"events": [
{
"name": "JJUG",
"tickets": 5
}
]
}



6.IntelliJ IDEAへのソースコード取り込み



  • Project from Existing Sources...よりGitHubからクローンしたディレクトリ(akka-in-action-java/chapter-up-and-running)を指定

    image.png


  • Import project from external model ではMavenを指定

    image.png

  • 流れに従って進めFinishをクリックするとプロジェクトのインポート開始

  • こんなかんじに見れれば取り込み成功!!

    image.png

以上で準備完了です。おつかれさまでした。


追記

ハンズオンは「handson」ブランチで実施しました。


ブランチの切り替え

git checkout handson