在deepin上使用Fleet开发SpringBoot 3.0.0项目

  1. 1. 前言
  2. 2. 安装Fleet
  3. 3. 安装OpenJDK
  4. 4. 安装Gradle
  5. 5. 创建项目
  6. 6. 总结
  7. 7. 参考文章

出于对新工具和新技术的好奇,我开始尝试在deepin上用Fleet开发一个SpringBoot 3.0.0项目,继续我的SpringBoot学习。

前言

Fleet被称为是由 JetBrains 打造的下一代 IDE,目前出于公测状态,可以免费下载使用。

SpringBoot 3.0.0最小支持是JDK 17,这或许是对于JDK8的断舍离迈出的重大一步。

出于对新工具和新技术的好奇,我开始尝试在deepin上用Fleet开发一个SpringBoot 3.0.0项目,继续我的SpringBoot学习。

安装Fleet

Fleet下载界面中点击“下载Toolbox App”,会下载一个tar包,解压后双击里面的可执行文件,即可自动安装Toolbox。

下载Fleet

tar包

安装ToolBox

在Toolbox中安装Fleet,完成后打开可以发现它很简洁,很自由,少了很多环境配置的专有区域和优化,因此需要自己配置一些开发环境,诸如JDK、Gradle等。

安装OpenJDK

在Adoptium上下载OpenJDK 17版本:

OpenJDK

完成后在下载目录中执行下面的步骤:

1
2
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将文件夹所有权变更为当前用户,这样操作的目的是在一台机器上保存多个JDK版本)

随后添加环境变量,执行vim /etc/profile.d/java.sh,在文件中添加或修改:

1
2
3
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

若为第一次配置,则需要对文件赋权:

1
2
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 -versionjavac -version查看JDK是否配置成功。

JDK安装完成

安装Gradle

在/usr/local下创建gradle文件夹:

1
2
3
cd /usr/local
sudo mkdir gradle
sudo chown 登录的用户名:登录的用户名 /usr/local/gradle

随后进入该文件夹,使用wget下载Gradle安装包并解压,随后删除安装包:

1
2
3
4
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的环境变量

1
2
3
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是否安装成功。

安装完成Gradle

创建项目

使用Spring Initializr创建SpringBoot项目,选择使用的构建工具、语言、版本,填写相关包名,如下图所示:

创建SpringBoot项目

随后点击”GENERATE“,会下载一个zip压缩包。将该压缩包解压,随后用fleet打开解压后的文件,fleet会自动根据gradle的配置文件进行初始化:

自动初始化

/src/main/resources/application.properties中加入server.port=8000指定启动端口,随后在例如/src/main/java/Controller中添加相应的Controller,如下图所示,完成一个访问指定路径返回“Hello SpringBoot”的功能:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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修正错误,老JetBrains选手用得很舒服。

但相对于优点来说,缺点还是有很多的。以开发SpringBoot项目为例,由于没有插件支持,并且Fleet内没有专门的根据项目类型新建项目的选择,对于初学者来说几乎要依靠很多第三方工具(诸如Spring Initializr)才能完成项目初始化构建。同时吐槽一点,Fleet内部的Git管理因为 .gitignore 被修改不能选择那个文件,所以不能一键全选,不如在Terminal中用git命令。

无法正常使用git

因此综合使用体验来说,个人目前不建议用Fleet,它不像专用IDE有一套引导流程,也不像VSCode那样有很多插件支持。希望之后的版本中很多功能可以被完善,使用体验会更棒。

参考文章