LoginSignup
3
0

More than 1 year has passed since last update.

Open LibertyでつくるHelloWorldタイムアタック

Posted at

はじめに

Open LibertyはLightWeightなオープンフレームワークですが、準備して動かすところも軽いのでしょうか。
そこで、プログラムの第一歩である「HelloWorld」をOpen Libertyで動かすことがどれくらい簡単かを確認していきます。

試すこと

ゼロから環境を作成してHelloWorldが表示できるまでのステップと時間を主に確認します。手順は大きく次のステップになります。

  • JDKのインストール
  • Open Libertyのプロジェクト作成
  • HelloWorldロジックの追加
  • 起動

実行環境

種類 スペック
OS Windows 11 Enterprise (21H2)
メモリ 16GB

つくってみる

JDKのインストール

ここではIBMのJDKであるSemeruRuntimeを使用していきます。
ダウンロードサイトはこちら

今回はWindowsのインストーラ(msi)版を選択します。
230509a5.png
ダウンロード後、ダブルクリックでインストール開始です。特にインストール時の指定は迷わないかと思います。

インストール後の確認として、コマンドプロンプトより

java --version

と入力し、次のような結果が返ればOKです。
image.png
もし表示されない場合は、環境変数 JAVA_HOME の設定が適切かを確認してください。

Open Libertyのプロジェクト作成

「Open Liberty の公式サイトを使いこなそう」で記載しましたが、プロジェクトのひな形をサイトからダウンロードすることができます。
Get Started > Create a starter application から、JakartaEEベースでプロジェクトを作成します。
image.png
「Generate Project」のボタンを押すことで構成済プロジェクトをまとめたzipファイルがダウンロードできます。

取得したzipファイルを任意のフォルダに展開します。今回はC:\projectsというフォルダを作成し、ここに展開します。
結果、C:\projects\app-ee フォルダができあがりました。

HelloWorldロジックの追加

C:\projects\app-ee\src\main\java\jp\sample\rest
フォルダの下に、HelloWorldを返却するファイルを追加します。

Hello.java
package jp.sample.rest;

import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;

@Path("hello")
public class Hello {

    @GET
    public String helloResponse() {
        return "Hello World!!";
    }
}

起動

コマンドプロンプトで、プロジェクトフォルダから「mvnw liberty:dev」を実行します。

C:\projects\app-ee>mvnw liberty:dev

Mavenが定義に応じてライブラリを自動ダウンロードするため、初回は少し時間がかかります。2回目以降は1分程度で起動できます。

コンソールの表示が次のところまで進んだら準備完了です。
image.png
ブラウザからlocalhostにアクセスし、次のような表示になればOKです。
image.png

CURLコマンドによる確認でも。

curl http://localhost:9080/app-ee/api/hello

まとめ

  • 起動まで3分10秒
  • 起動に3分58秒

上記は自環境で1回試した際の記録ですので、目安レベルとご認識ください。
各プロセスはネットワーク速度によって変動があると思います。所要時間の半分くらいはダウンロードを行っています。

単なるHelloWorldですが、難しいことなく手軽に試せるというイメージは持っていただけるのではないでしょうか。
タイムアタックする必要はありませんが、ぜひ一度チャレンジしてみてください。

3
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
3
0