Just,一个用于Spring Boot应用程序的新CLI

Just:零配置的Java开发命令行工具

Just 是一款无需配置的命令行工具,旨在提升开发者在构建 Spring Boot 应用程序时的体验。它能够自动检测源代码、构建文件或 Docker Compose 文件的更改,并重新加载应用程序。此外,Just 还支持创建原生应用程序和原生 Docker 镜像。

开发背景与技术支持

Just 由自由架构师兼开发者 Maciej Walkowiak 发布,距离首次提交代码仅 11 个月。Just 本身是一个编译为原生二进制文件的 Spring Boot 应用程序,使用了以下技术:

  • picocli:用于创建功能丰富的命令行应用程序。
  • Testcontainers:用于在 JUnit 测试中运行容器。
  • Sentry:用于错误监控。
  • JReleaser:用于项目发布。

功能特性

  1. 自动重载:Just 使用 Spring Boot Devtools,在源代码更改后自动重载应用程序。不仅如此,Just 还能自动检测源代码的更改并编译这些更改。当 pom.xmlbuild.gradle 文件发生变化时,应用程序会停止,构建文件刷新后重新启动。
  2. 基础设施服务管理:与 Spring Boot Devtools 不同,Just 在执行 run 子命令时,还会启动通过 Docker Compose 定义的基础设施服务(如数据库)。
  3. 构建支持:Just 支持 Maven 和 Gradle,包括它们的包装器和 Maven Daemon。build 子命令会根据项目配置转换为正确的 Maven 或 Gradle 命令,支持以下构建目标:

    • jar:生成 JAR 文件。
    • native:生成原生应用程序。
    • image:生成 Docker 镜像。
    • native-image:生成原生 Docker 镜像。

    使用 --quick 选项可以跳过测试、文档生成和代码格式化等检查。

  4. 代码格式化format 子命令可以根据项目配置,使用 Spring Java Format 或 Spotless 规则格式化代码库。
  5. 进程管理kill 子命令可以终止正在运行的进程,默认终止端口 8080 上的进程。可以通过 -p 参数指定端口,或使用 -9 参数强制终止进程。

安装与使用

Just 可以通过以下方式安装:

  • MacOS:使用 Homebrew 安装。
  • Windows:使用 Scoop 安装。
  • 手动安装:支持 macOS、Windows 和 Linux,例如通过 Linux 命令行安装。

安装完成后,可以使用 help 子命令验证安装。

集成开发环境(IDE)支持

Just 可以在 IntelliJ IDEA 中通过添加运行配置来使用。可以通过执行 init idea 子命令自动添加配置,或手动添加 Shell Script 运行配置。

项目状态与许可

Just 目前处于 Alpha 阶段,尚未开源。GitHub 仓库仅包含二进制文件、发布说明和问题跟踪器,不包含源代码。当前版本免费使用,但每个版本都有内置的过期日期,过期后需要购买或安装最新版本。

更多信息

更多详细信息可参考 Getting Started 文档。

阅读 50
0 条评论