Fleet は、JetBrains によって開発された次世代の IDE として知られており、現在はベータ版であり、無料でダウンロードして使用することができます。
SpringBoot 3.0.0 の最小サポートは JDK 17 であり、これは JDK8 からの重要な一歩です。
新しいツールや新しい技術に興味を持って、私は deepin 上で Fleet を使用して SpringBoot 3.0.0 プロジェクトを開発し、SpringBoot の学習を続けることを試みました。
Fleet のインストール#
Fleet のダウンロードページで、「Toolbox App をダウンロード」をクリックし、tar ファイルをダウンロードします。ダウンロード後、解凍して、内部の実行可能ファイルをダブルクリックして Toolbox を自動的にインストールします。
Toolbox で Fleet をインストールし、インストールが完了すると、シンプルで自由度が高く、環境設定の専用領域や最適化が少ないことがわかります。そのため、JDK や Gradle などの開発環境を自分で設定する必要があります。
OpenJDK のインストール#
Adoptium から OpenJDK 17 をダウンロードします:
ダウンロードが完了したら、ダウンロードディレクトリで以下の手順を実行します:
tar -zxvf OpenJDK17U-jdk_x64_linux_hotspot_17.0.8.1_1.tar.gz
mv jdk-17.0.8.1+1/ /usr/local/jdk
(もし /usr/local/jdk ディレクトリが存在しない場合は、sudo mkdir /usr/local/jdk
を使用してディレクトリを作成し、sudo chown -R ユーザー名:ユーザー名 /usr/local/jdk
を使用してディレクトリの所有権を現在のユーザーに変更する必要があります。これは、1 台のマシン上で複数の JDK バージョンを保存するための操作です)
その後、環境変数を追加し、vim /etc/profile.d/java.sh
を実行し、ファイルに以下を追加または変更します:
export JAVA_HOME=/usr/local/jdk/jdk-17.0.8.1+1
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
初めて設定する場合は、ファイルに権限を付与する必要があります:
sudo chmod 755 /etc/profile.d/java.sh
sudo chown ログインユーザー名:ログインユーザー名 /etc/profile.d/java.sh
source /etc/profile.d/java.sh
を使用して環境変数を再読み込みし、その後sudo vim ~/.bashrc
を入力し、最後にsource /etc/profile.d/java.sh
を追加して保存します。
java -version
とjavac -version
を入力して、JDK が正しく設定されているかどうかを確認します。
Gradle のインストール#
/usr/local に gradle フォルダを作成します:
cd /usr/local
sudo mkdir gradle
sudo chown ログインユーザー名:ログインユーザー名 /usr/local/gradle
その後、そのフォルダに移動し、wget を使用して Gradle のインストールパッケージをダウンロードし、解凍してインストールパッケージを削除します:
cd gradle
wget https://downloads.gradle.org/distributions/gradle-8.3-bin.zip
unzip gradle-8.3-bin.zip
rm -rf gradle-8.3-bin.zip
これで gradle ディレクトリには gradle-8.3 というフォルダしかありません。これにより、複数のバージョンの Gradle が存在する場合に簡単に切り替えることができます。
JDK の環境変数の設定と同様に、sudo vim /etc/profile.d/gradle.sh
を使用して Gradle の環境変数を作成します。
export GRADLE_HOME=/usr/local/gradle/gradle-8.3
export GRADLE_USER_HOME=$GRADLE_HOME/repo
export PATH=${GRADLE_HOME}/bin:${PATH}
source /etc/profile.d/gradle.sh
を使用して環境変数を再読み込みし、その後sudo vim ~/.bashrc
を入力し、最後にsource /etc/profile.d/gradle.sh
を追加して保存します。
gradle --version
を入力して、Gradle が正しくインストールされているかどうかを確認します。
プロジェクトの作成#
Spring Initializrを使用して SpringBoot プロジェクトを作成し、使用するビルドツール、言語、バージョンを選択し、関連するパッケージ名を入力します。以下の画像のようになります:
その後、「GENERATE」をクリックすると、zip 圧縮ファイルがダウンロードされます。この圧縮ファイルを解凍し、fleet で解凍後のファイルを開くと、fleet が自動的に gradle の設定ファイルに基づいて初期化されます。
/src/main/resources/application.properties
にserver.port=8000
を追加して、起動ポートを指定し、例えば/src/main/java/Controller
に適切な Controller を追加します。以下のように、指定されたパスにアクセスすると「Hello SpringBoot」という結果が返される機能が完成します:
package studio.tsukistar.demo.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class testController {
@GetMapping("/hello")
public String hello() {
String hellotext;
hellotext = "Hello SpringBoot";
return hellotext;
}
}
Ctrl+Rを使用するか、右上の実行ボタンをクリックすると、Fleet が自動的にビルドして実行され、ブラウザでhttp://localhost:8000/hello
を入力すると結果が表示されます。
結論#
Fleet は、JetBrains が開発した軽量な IDE として、個人的にはまだ改善の余地があると感じています。
Fleet にはいくつかの利点があります。たとえば、スマートモードでは、プロジェクトフォルダに含まれるファイルに基づいて自動的にビルドやインデックスなどが行われ、コード補完機能は比較的完全な情報を表示します。また、Alt+Enter を使用してエラーを修正することもできます。
しかし、利点に比べて欠点も多いです。SpringBoot プロジェクトの開発を例に挙げると、プラグインのサポートがなく、プロジェクトの種類に基づいたプロジェクトの作成の選択肢が Fleet 内にないため、初心者はほぼすべてのプロジェクトの初期化と構築に多くのサードパーティツール(Spring Initializr など)に頼る必要があります。また、Fleet 内部の Git 管理は、 .gitignore が変更されたためにそのファイルを選択できず、一括選択することができないため、git コマンドを使用する Terminal の方が便利です。
したがって、総合的な使用体験から言えば、現時点では Fleet をおすすめしません。専用の IDE のようなガイド付きフローもなく、VSCode のような多くのプラグインサポートもありません。将来のバージョンで多くの機能が改善され、使用体験が向上することを期待しています。