Redian新闻
>
SpringBoot 应用的新命令行界面:Just

SpringBoot 应用的新命令行界面:Just

公众号新闻

命令行工具 Just,无需任何配置即可自动加载有变动的源码、构建文件或 Docker 编排文件,提升 Spring Boot 应用构建时的 Java 开发体验,同时该项目也支持生成(原生)应用及(原生)Docker 镜像。

自由职业建筑师兼开发者 Maciej Walkowiak,在代码首次提交恰好一个月后,正式 发布 了 Just。

这款被编译为原生二进制文件的 Spring Boot 应用借助 picocli 编写出功能丰富的命令行应用、Testcontainers 运行容器的 JUnit 测试、Sentry 监测问题错误,以及 JReleaser 发布项目。

Just 可以自动检测源码变动,并在自动重构后使用 Spring Boot 开发工具 重新加载应用。此外,修改pom.xmlbuild.gradle文件的构建都会导致应用暂停,并在构建文件刷新后重新启动。

与 Spring Boot 开发工具不同,执行run子命令时 Just 会启动数据库、通过 Docker 编排 定义的服务等基础设施服务,执行just命令可以自动触发应用构建配置检测。Just 支持 MavenGradle 对应的封装器,也支持 Maven Daemon。仅需执行一次run子命令,Just 就能够处理好应用中的变更。

与run子命令相比,build子命令执行时会根据构建目标正确地转换成对应的 Maven 或 Gradle 命令:

just build [--quick] [--skip-test] <buildTarget>

使用其中的quick选项会跳过测试、文档生成、格式检测以及静态分析。Just 提供jar、native、image,以及原生native-image几种不同buildTarget选项以创建(原生)应用或(原生)Docker 镜像。

另外,format子命令会根据项目配置中默认设置、Spring Java 格式、Spotless 配置规则格式化代码库。运行中进程可通过kill子命令终止,默认设置下端口 8080 上运行的进程会被终止,但端口号也可以通过-p 参数指定,-9参数则会强行执行kill子命令。

Just 可通过命令行执行,在 IntelliJ IDEA 则需要先通过init idea子命令新增运行配置,手动新增配置则可以在“运行”菜单栏的下拉选项中选择“修改配置”,新增“Shell 脚本”并重命名,“执行”选项选择“Script Text”,输入框“Script Text”中输入just run。取消勾选“命令行执行”后应用配置,“运行”菜单中就会显示行 shell 脚本的名称,我们也可以点击启动 Just 了。

在 MacOS 上安装 Just 可通过 Homebrew 执行:

brew install maciejwalkowiak/brew/just

在 Windows 上则通过 Scoop

scoop bucket add maciejwalkowiak https://github.com/maciejwalkowiak/scoop-just.git
scoop install just

此外,也可以手动安装应用至 maxOS、Windows 或 Linux,以 Linux 命令为例:

curl -Lo just.zip https://github.com/maciejwalkowiak/just/releases/latest/download/just-0.12.0-linux-x86_64.zip && unzip just.zip && chmod +x just && sudo mv just /usr/local/bin/just && just help

其中的help子命令可用于验证安装结果。

Just 并非开源项目,其在 GitHub仓库 中仅包含二进制、发布说明以及问题追踪,并没有发布源码。

目前项目仍处于 Alpha 测试阶段且可免费使用,所有的发布版本中都含有内置过期时间,过期后可能需要购买应用或安装最新版本。

关于 Just 更多信息可查看“开始使用”文档。

原文链接:

  • Just, a New CLI for Spring Boot Applications(https://www.infoq.com/news/2023/01/just-spring-boot-cli/)

推荐

java更轻量级的权限管理框架:jcasbin

SpringBoot+Flowable 快速实现工作流,so easy!

PS:因为公众号平台更改了推送规则,如果不想错过内容,记得读完点一下“在看”,加个“星标”,这样每次新文章推送才会第一时间出现在你的订阅列表里。“在看”支持我们吧!

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
SpringBoot 中 MybatisX 插件的简单使用教程(超详细!!)Springboot代码混淆,别再让代码在线上进行裸奔SpringBoot+Flowable 快速实现工作流,so easy!纯命令行+美观UI,10款实用开源下载工具Just:Spring Boot 应用的新命令行界面Just When You Thought You Were Having a Poopy Day字节:SpringBoot 启动流程SpringBoot + Druid,完美监控 MySQL 性能SpringBoot 多数据源及事务解决方案【双龙喜相逢】如意龙#2+《假如爱有天意》+平安夜,平安快乐!SpringBoot 启动优化实践!在 Linux 命令行上使用 dict 文字工具 | Linux 中国SpringBoot 整合 ChatGPT API 项目实战SpringBoot 我随手封装了一个万能的导出excel工具,传什么都能导出SpringBoot 实现 MySQL 百万级数据量导出并避免 OOM 的解决方案SpringBoot 使用线程池如何控制主线程和子线程的事务别再自己瞎写工具类了,SpringBoot 内置工具类应有尽有,建议收藏!!妥了...还是SpringBoot够牛逼!SpringBoot 在打包部署的时候打包成 jar 和 war 有什么不同?这是我见过最好的SpringBoot系统!酒寄于情(1)Agustín Hernández:中美洲建筑背景下的未来主义巨构SpringBoot + MDC 实现全链路调用日志跟踪读《诗》:读《式微》在 C 语言中使用 getopt 解析命令行短选项 | Linux 中国深入剖析 Spring Boot 的 SPI 机制Trump just released his plan to combat homelessness in USSpringBoot 统一功能处理:用户登录权限校验-拦截器、异常处理、数据格式返回SpringBoot 实现 Excel 导入导出,百万数据量,性能爆表!SpringBoot+Prometheus+Grafana 实现自定义监控SpringBoot+Vue 实现网页版人脸登录、人脸识别,逼格很高!!!GitLab推出命令行工具,将整个开发流程带到了终端上K8s + SpringBoot实现零宕机发布疗伤之旅——普吉岛之四SpringBoot 如何快速过滤出一次请求的所有日志?哎,丫头没回成家。。。天赋“易昺(bǐng)”,创造历史!
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。