Just:零配置的Java开发命令行工具
Just 是一款无需配置的命令行工具,旨在提升开发者在构建 Spring Boot 应用程序时的体验。它能够自动检测源代码、构建文件或 Docker Compose 文件的更改,并重新加载应用程序。此外,Just 还支持创建原生应用程序和原生 Docker 镜像。
开发背景与技术支持
Just 由自由架构师兼开发者 Maciej Walkowiak 发布,距离首次提交代码仅 11 个月。Just 本身是一个编译为原生二进制文件的 Spring Boot 应用程序,使用了以下技术:
- picocli:用于创建功能丰富的命令行应用程序。
- Testcontainers:用于在 JUnit 测试中运行容器。
- Sentry:用于错误监控。
- JReleaser:用于项目发布。
功能特性
- 自动重载:Just 使用 Spring Boot Devtools,在源代码更改后自动重载应用程序。不仅如此,Just 还能自动检测源代码的更改并编译这些更改。当
pom.xml或build.gradle文件发生变化时,应用程序会停止,构建文件刷新后重新启动。 - 基础设施服务管理:与 Spring Boot Devtools 不同,Just 在执行
run子命令时,还会启动通过 Docker Compose 定义的基础设施服务(如数据库)。 构建支持:Just 支持 Maven 和 Gradle,包括它们的包装器和 Maven Daemon。
build子命令会根据项目配置转换为正确的 Maven 或 Gradle 命令,支持以下构建目标:jar:生成 JAR 文件。native:生成原生应用程序。image:生成 Docker 镜像。native-image:生成原生 Docker 镜像。
使用
--quick选项可以跳过测试、文档生成和代码格式化等检查。- 代码格式化:
format子命令可以根据项目配置,使用 Spring Java Format 或 Spotless 规则格式化代码库。 - 进程管理:
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 文档。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。