Fleet是JetBrains 公司推出的轻量级编辑器,对标VSCode。该款产品还在公测当中,具体下载链接如下JetBrains Fleet:由 JetBrains 打造的下一代 IDE。想要尝试的朋友可以自行下载。
下面教没研究过的朋友快速使用Fleet上手一个springboot项目。
(1)构建一个Maven项目
由于Fleet本身不是一个集成的IDE,而是一个文本编辑器,所以暂时没有自动构建Maven项目的功能。我们有两种选择,一种是使用mvn命令,另外一种就是借用IDEA的快速构建Maven项目的功能。这里我选择IDEA的快速构建功能。
新建项目

创建一个Maven空项目

使用Fleet打开该文件夹,这里我展示的是我之前新建的项目。右上角的闪电标志会开始解析项目。

(2)配置Maven
点击右上角的设置

选择右边JAVAWEB文件夹的设置

此时Fleet会自己读取系统路径中的MAVEN_HOME 和 JAVA_HOME 两个配置,当然也可以自己选择Maven,JDK的路径。Maven的setting.xml建议换成自己原来的xml配置,不过似乎好像没有更换本地仓库路径的选项,默认在C盘User目录下的.m2文件夹里。
(3)配置POM文件
这里导入项目一些通用的初始依赖

我把内容也贴出来方便读者测试。
xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.scucs</groupId>
<artifactId>jahp-campus-forum</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!-- 依赖包版本管理 -->
<java.version>17</java.version>
<!-- SpringCloudAlibaba 版本管理,定义常用组件版本,后续直接使用无需添加版本号 -->
<alibaba.version>2021.0.4.0</alibaba.version>
<!-- SpringBoot 版本管理,定义常用组件版本,后续直接使用无需添加版本号 -->
<springboot.version>2.6.11</springboot.version>
<mysql.version>8.0.27</mysql.version>
<lombok.version>1.18.20</lombok.version>
<mybatisplus.version>3.5.1</mybatisplus.version>
<logback.version>1.2.3</logback.version>
<hutool.version>5.7.17</hutool.version>
<druid.version>1.2.1</druid.version>
<javacv.version>1.5.7</javacv.version>
<fastjson2.version>2.0.36</fastjson2.version>
<mybatis-spring-boot-starter.version>2.2.2</mybatis-spring-boot-starter.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>${springboot.version}</version>
</dependency>
<!-- mybatis -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>${mybatis-spring-boot-starter.version}</version>
</dependency>
<!-- mysql驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql.version}</version>
<scope>runtime</scope>
</dependency>
<!-- mybatis-plus -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>${mybatisplus.version}</version>
</dependency>
<!-- hutool -->
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>${hutool.version}</version>
</dependency>
<!-- druid -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>${druid.version}</version>
</dependency>
<!--fastjson2 -->
<dependency>
<groupId>com.alibaba.fastjson2</groupId>
<artifactId>fastjson2</artifactId>
<version>${fastjson2.version}</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>${lombok.version}</version>
</dependency>
</dependencies>
</project>
配置好基本的web依赖之后,点击右上角Maven的选项开始下载依赖,参考IDEA的布局,有阿里云镜像的话还是很快的。
等待红色报错都没了就代表依赖下载好了,可以写我们的TestController了。
(4)基础代码
代码如下

java
package com.scucs.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RequestMapping("/test")
@RestController
public class TestController {
@GetMapping("/hello")
public String helloworld() {
return "hello";
}
}
基础代码写好之后就可以在启动类点击左边的运行按钮来运行项目了。
不过大概率会报这样的错,这是因为Springboot默认注入数据源,但是我们并没配置,有两种解决办法。

第一种是加上注解告诉Spring不需要数据源。
但是很可惜不行,这个办法在IDEA是可行的,但是Fleet似乎还不支持。

第二种自己加上配置文件配置数据源。


再次运行

没有报错,我们在浏览器里发一个简单的GET请求试一试,localhost:9090/test/hello

可以看到成功了。
(5)总结
Fleet还在公测阶段,各种小BUG不断,比如启动类旁边找不到运行按钮,终端拖到最底下就没法再拖上去等等,而且好像还没有插件模块,没法使用各种快捷功能比如快速构建Maven项目。
不过毕竟是一个文本编辑器,我们不能像要求IDEA一样要求它。对于Fleet正式上线的那一天我还是很期待的,Fleet界面简洁友好,风格也是比较独树一帜。
后续我会尝试使用Fleet完成这学期的一个课程小WEB项目,也会继续更新使用教程和体验。