写点什么

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:0019024

评论 1 条评论

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

技术选型课程小结

梅子黄时雨

极客大学架构师训练营

依旧乐观的李彦宏,十年寻光的百度AI

脑极体

数据分析师成长体系漫谈-数仓模型设计

analysis-lion

学习 数据仓库 数据分析 随笔杂谈

Newbe.Claptrap 框架入门,第一步 —— 创建项目,实现简易购物车

newbe36524

Docker Reactive ASP.NET Core

Scala中如何优雅地实现break操作

吴慧民

scala

聊聊Spring的IOC以及JVM的类加载

小隐乐乐

如何学习Visual Studio Code

博文视点Broadview

学习 读书笔记 vscode 能力提升 编辑器

华为云FusionInsight MRS通过信通院大数据能力评估 单集群突破2万+规模

数据湖洞见

大数据 FusionInsight MRS 华为云

开发者必备——API设计问题

Noneplus

ArrayList源码阅读

慌张而黑糖

ArrayList 源码阅读

JVM中栈的frames详解

程序那些事

JVM 堆栈 性能调优 JIT GC

为了把握新基建风口,科技公司都在紧密筹备这件事...

极客时间企业版

如何通过DDD构建一辆汽车

冯文辉

领域驱动设计 DDD

信创舆情一线--5省发布区块链发展计划

统小信uos

区块链 舆情

架构师训练营-作业5

紫极

这样的二维码,你见过吗?

诸葛小猿

Java Python 后端 二维码 myqr

redis系列之——分布式锁

诸葛小猿

Java redis 分布式 分布式锁

啃碎并发(七):深入分析Synchronized原理

猿灯塔

Java

分布式缓存与消息队列

紫极

数据库分片

Axe

Struct embedding in Go

Interstate5

time.Time dynamodb apigateway Go 语言

golang内存对齐

PONPON

go内存对齐 Go 语言

鲲鹏说:高考之路你们走,高考阅卷我来守

脑极体

架构师训练营第六周总结

Melo

极客大学架构师训练营

Hadoop大数据存算分离下,如何解决新旧存储共存?

XSKY星辰天合

kubernetes集群安装(二进制)

小小文

Kubernetes 容器

typora设置图片自动上传,实现快速发文章

诸葛小猿

Typora PicGo gitee 上传图片

阿里四面你都知道吗?

root

Java 程序员 互联网 阿里 简历

人生就是体会矛盾的过程

封不羁

成长 感悟

毕业三年了,我开始明白为什么说三年是一个坎

鄙人薛某

程序员 程序人生 职场回顾

统一物品编码破解追溯“断链”困局

CECBC

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