OceaBase开发者大会落地上海!4月20日共同探索数据库前沿趋势!报名戳 了解详情
写点什么

Just:Spring Boot 应用的新命令行界面

  • 2023-02-01
    北京
  • 本文字数:1343 字

    阅读完需:约 4 分钟

Just:Spring Boot应用的新命令行界面

命令行工具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 支持 Maven 和 Gradle 对应的封装器,也支持 Maven Daemon。仅需执行一次run子命令,Just 就能够处理好应用中的变更。

 

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

just build [--quick] [--skip-test] <buildTarget>
复制代码

 

使用其中的quick选项会跳过测试、文档生成、格式检测以及静态分析。Just 提供jarnativeimage,以及原生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.gitscoop 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


相关阅读:

Spring Boot 3 和 Spring Framework 6 使用 Java 17 和 Jakarta EE 9,并支持基于 GraalVM 的原生 Java

Spring Boot Migrator 简介

Dubbo 正式支持 Spring 6&Spring Boot 3

2023-02-01 08:0017318

评论 1 条评论

发布
用户头像
不错
2023-02-06 08:15 · 浙江
回复
没有更多了
发现更多内容

你掉进过“伪敏捷”的陷阱吗?

华为云开发者联盟

项目管理 软件 敏捷

研发和测试在多国陆续展开 全球央行数字货币研发驶入快车道

CECBC

数字货币 金融

如何设计一个牛逼的API接口

Java旅途

Spring Boot API

浅析 Golang 垃圾回收机制

郭旭东

Go 语言

大型互联网应用系统的技术方案和手段

饺子

本周学习总结

饺子

看看专科程序员与本科程序员之间,到底有什么区别?

Java架构师迁哥

通证、通证经济与区块链

CECBC

区块链 通证经济

京东区块链之供应链应用篇:溯源应用结合区块链能碰撞出什么火花?

京东科技开发者

区块链 供应链

阿里云服务器搭建

时间是一个人最好的证明

阿里云 服务器 域名

架构师训练营第四周作业

Shunyi

极客大学架构师训练营

2020亚马逊全球Prime会员日为会员节省金额超过14亿美金

爱极客侠

MySQL-技术专题-SQL优化系列

洛神灬殇

区块链将这样影响你的生产生活

CECBC

区块链 信息发展

拯救深度学习:标注数据不足下的深度学习方法

华为云开发者联盟

学习 AI 训练

《Java核心技术总结》+《面试题总结》PDF整理,阿里P8大牛熬了半个月肝出来的!

Java架构之路

Java 阿里巴巴 程序员 面试 编程语言

架构师训练营第 1 期第四周总结

Leo乐

极客大学架构师训练营

《Linux学习笔记》从常用命令、常用操作到网络管理、性能优化

Java架构之路

Java Linux 程序员 面试 编程语言

5张表的sql整懵阿里p7:你们能看明白自己写的啥吗?

小Q

MySQL 数据库 学习 调优 mycat

Flink处理函数-6-4

小知识点

scala 大数据 flink

【人人都懂密码学】一篇最易懂的Java密码学入门教程

华为云开发者联盟

加密 密码

Vidyo整个产品架构是怎样的?

dwqcmo

音视频 集成架构 解决方案 智能硬件

上周,我密集面试了若干位Java后端的候选人,工作经验在3到5年间

Java架构师迁哥

有符号类型引发的奇怪现象

jiangling500

架构师训练营第一期-第四周课后作业

卖猪肉的大叔

极客大学架构师训练营

架构师训练营第一期-第四周学习总结

卖猪肉的大叔

极客大学架构师训练营

阿里内部绝密《百亿级并发系统设计》实战教程,冒着被劝退的风险免费分享

Java架构之路

Java 阿里巴巴 程序员 面试 编程语言

数据库技术丨GaussDB(DWS)数据同步状态查看方法

华为云开发者联盟

数据库 高可用

架构师训练营 1 期 - 第四周 - 系统架构

三板斧

极客大学架构师训练营

第四周学习代码系统架构总结

三板斧

Java 中的反射是什么

Rayjun

Java 反射

Just:Spring Boot应用的新命令行界面_编程语言_Johan Janssen_InfoQ精选文章