SpringBoot3 組み込みJettyで動かしてみた

こんにちは第0ユニットのチキンキウイです。
SpringBoot3がリリースされていたので、今回は組み込みサーバーを変更して
動かしてみようと思います。

環境

  • SpringBoot3.0.6
  • Java17
  • Gradle 7.6.1

設定内容

SpringBoot3を組み込みJettyで動作させるには「build.gradle」に以下に設定を追加すことで実現できます。

ext['jakarta-servlet.version'] = '5.0.0'

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-web'
    modules {
        module("org.springframework.boot:spring-boot-starter-tomcat") {
            replacedBy("org.springframework.boot:spring-boot-starter-jetty", "Use jetty instead of tomcat")
        }
    }
    implementation 'org.springframework.boot:spring-boot-starter-jetty'
    providedRuntime 'org.springframework.boot:spring-boot-starter-jetty'
}

動かしてみた

ここからは実際にプロジェクトを作成し実際に動かしていきます。

SpringBootプロジェクトの作成

[ファイル>新規作成>その他]からウィザードを開き
新規のspringスタータープロジェクトを作成します。

build.gradleの変更

プロジェクトを作成したら「build.gradle」を開きJettyの変更を追加します。

「build.gradle」変更後は「Gradleプロジェクトのリフレッシュ」を実行してください。

動かしてみた

プロジェクトのリフレッシュが完了したらプロジェクトを実行してみます。
実行してログに「Jetty started」が表示されていればJettyで起動しています。

画像に alt 属性が指定されていません。ファイル名: image-3-1024x401.png

まとめ

今回はSprinngBoot3でJettyサーバーを動かしてみました。
SpringBoot3の情報はまだまだ少ないので、参考の一つにでもなれば幸いです。

参考

GitHub Document how to downgrade dependencies to use embedded Jetty 11
https://github.com/spring-projects/spring-boot/issues/33044#issuecomment-1326332014