当前位置: 首页 > news >正文

重学SpringBoot3-安装Spring Boot CLI

更多SpringBoot3内容请关注我的专栏:《SpringBoot3》
期待您的点赞👍收藏⭐评论✍

重学SpringBoot3-安装Spring Boot CLI

  • 1. 什么是 Spring Boot CLI?
  • 2. Spring Boot CLI 的安装
    • 2.1. 通过 SDKMAN! 安装
    • 2.2. 通过 Homebrew 安装(适用于 macOS)
    • 2.3. 直接下载二进制文件
    • 2.4. 基本命令
  • 3. Spring Boot CLI 的基本使用
    • 3.1. 使用 Spring Boot CLI 初始化项目
      • 创建一个 Maven 项目:
      • 创建一个 Gradle 项目:
      • 列出可用依赖项:
    • 3.2. 使用嵌入式Shell
    • 3.3. 加密密码
  • 4. 总结

1. 什么是 Spring Boot CLI?

Spring Boot CLI(Command Line Interface)是 Spring Boot 提供的一个命令行工具,用于简化开发 Spring 应用程序的过程。借助 Spring Boot CLI,开发者可以通过 Groovy 脚本快速创建和运行 Spring 应用,而不需要像传统的 Spring 应用那样配置繁琐的 XML 文件或 Java 配置类。

它适用于原型设计、快速实验以及小型应用的开发场景。在这篇博客中,我将详细介绍如何安装和使用 Spring Boot CLI,并演示一些基本用法。


2. Spring Boot CLI 的安装

Spring Boot CLI 支持多种安装方式,包括通过 SDKMAN!、Homebrew 或者直接下载二进制包。你可以选择自己最喜欢的方式进行安装。

2.1. 通过 SDKMAN! 安装

SDKMAN! 是一个管理多种开发工具的工具,推荐用来安装和管理 Spring Boot CLI。

安装步骤:

  1. 安装 SDKMAN!

    如果还没有安装 SDKMAN!,可以通过以下命令安装(windows下可在 git bash 中执行以下命令):

    curl -s "https://get.sdkman.io" | bash
    source "$HOME/.sdkman/bin/sdkman-init.sh"
    

    查看SDKMAN!安装情况

  2. 使用 SDKMAN! 安装 Spring Boot CLI

    安装好 SDKMAN! 之后,你可以直接安装 Spring Boot CLI:

    sdk install springboot
    

    SDKMAN安装 Spring Boot CLI

  3. 验证安装

    安装完成后,运行以下命令来确认安装成功并查看版本:

    spring --version
    

    Spring Boot CLI安装情况

    如果看到类似如下输出,说明 Spring Boot CLI 已成功安装:

    Spring CLI v3.x.x
    

2.2. 通过 Homebrew 安装(适用于 macOS)

对于 macOS 用户,可以使用 Homebrew 来安装 Spring Boot CLI:

  1. 安装 Homebrew(如果尚未安装):

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    
  2. 通过 Homebrew 安装 Spring Boot CLI

    brew tap spring-io/tap
    brew install spring-boot-cli
    
  3. 验证安装

    使用以下命令检查安装是否成功:

    spring --version
    

2.3. 直接下载二进制文件

如果不想使用 SDKMAN! 或 Homebrew,还可以直接从 Spring 官网下载 Spring Boot CLI 的压缩包。

  1. 下载 Spring Boot CLI

    访问 Spring Boot 的 下载页面 ,找到 Spring Boot CLI 的二进制下载链接并下载适合你的系统的文件。

    下载地址

  2. 解压文件

    将下载的压缩文件解压到你想安装的目录:

    unzip spring-boot-cli-3.x.x-bin.zip
    
  3. 配置环境变量

    解压后将 spring 命令所在的目录添加到系统的 PATH 中。比如,你可以在 .bashrc.zshrc 中添加:

    export PATH=$PATH:/path/to/spring-boot-cli/bin
    
  4. 验证安装

    和前面一样,使用以下命令验证安装成功:

    spring --version
    

2.4. 基本命令

通过输入 spring 获取spring boot cli 基本命令,通过 spring help xx 获取命令使用方式。

查看命令

帮助


3. Spring Boot CLI 的基本使用

3.1. 使用 Spring Boot CLI 初始化项目

Spring Boot CLI 可以通过 spring init 命令来快速生成 Spring Boot 项目。类似于 Spring Initializr 网站,这个命令可以创建一个标准的 Maven 或 Gradle 项目结构。

spring init命令

创建一个 Maven 项目:

spring init --dependencies=web --build=maven my-app

上面的命令会生成一个名为 my-app 的目录,里面包含一个简单的 Spring Boot 项目,并自动引入了 spring-boot-starter-web 依赖。

你可以使用任何你喜欢的 IDE 打开这个项目,然后执行 mvn spring-boot:run 来启动它。

my-app项目

my-app项目

创建一个 Gradle 项目:

如果你更喜欢 Gradle,可以使用 --build=gradle 参数(默认就是 gradle):

spring init --dependencies=web --build=gradle my-app

列出可用依赖项:

spring init --list

显示所有可用的 Spring Boot 依赖项,方便用户在初始化项目时选择。

spring init --list命令

3.2. 使用嵌入式Shell

Spring Boot 包含 BASH 和 zsh shell 的命令行补全脚本。如果不使用这两种 shell(也许您是 Windows 用户),则可以使用 shell 命令启动集成 shell,如以下示例所示:

$ spring shell
Spring Boot (v3.3.4)
Hit TAB to complete. Type \'help' and hit RETURN for help, and \'exit' to quit.
$

输入 exit 或者 ctrl + c 退出 shell 模式。

3.3. 加密密码

Spring Boot CLI 的另一个功能就是可以对密码进行编码以便与 Spring Security 一起使用,对应于使用 BCryptPasswordEncoder 进行加密。

$ encodepassword CoderJia123
{bcrypt}$2a$10$IYSC8wOZ8bbi390SN3Qfteen4pqptmzi3Kkd5iouoh621lZtzoYpu

4. 总结

Spring Boot CLI 是一个强大的工具,能够帮助开发者快速创建、运行和测试 Spring 应用程序。通过简洁的 Groovy 语言,你可以减少很多样板代码,并专注于业务逻辑的开发。特别是在原型设计和快速实验场景中,它极大地提高了开发效率。

对于想要体验 Spring Boot 强大功能且不想被繁杂配置束缚的开发者,Spring Boot CLI 是一个非常值得尝试的工具。

相关文章:

重学SpringBoot3-安装Spring Boot CLI

更多SpringBoot3内容请关注我的专栏:《SpringBoot3》 期待您的点赞👍收藏⭐评论✍ 重学SpringBoot3-安装Spring Boot CLI 1. 什么是 Spring Boot CLI?2. Spring Boot CLI 的安装2.1. 通过 SDKMAN! 安装2.2. 通过 Homebrew 安装(适…...

代码复现(五):GCPANet

文章目录 net.py1.class Bottleneck:残差块2.class ResNet:特征提取3.class SRM:SR模块4.class FAM:FIA模块5.class CA:GCF模块6.class SA:HA模块7.class GCPANet:网络架构 train.pytest.py 论文…...

联邦学习实验复现—MNISIT IID实验 pytorch

联邦学习论文复现🚀 在精度的联邦学习的论文之后打算进一步开展写一个联邦学习的基础代码,用于开展之后的相关研究,首先就是复现一下论文中最基础也是最经典的MNIST IID(独立同分布划分) 数据集。然后由于这个联邦学习的论文是谷歌发的&#…...

2015年-2017年 计算机技术专业 程序设计题(算法题)实战_c语言程序设计数据结构程序设计分析

文章目录 20151.C语言算法设计部分2.数据结构算法设计部分 20161.C语言算法设计部分2.数据结构算法设计部分 2017年1. C语言算法设计部分2.数据结构算法设计部分 2015 1.C语言算法设计部分 int total(int n) {if(n1) return 1;return total(n-1)n1; } //主函数测试代码已省略…...

个人用计算理论导引笔记(待补充)

文章目录 一、正则语言预备知识确定性有穷自动机(DFA)设计DFA正则运算 非确定性有穷自动机(NFA,含有 ε \varepsilon ε,下一个状态可以有若干种选择(包括0种))正则表达式定义计算优…...

2024年诺贝尔物理学奖揭晓:AI背后的“造梦者”是谁?

想象一下,你早上醒来,智能音箱为你播放天气和新闻,中午你用手机刷视频,精准的推荐内容简直和你心有灵犀,晚上回家,自动驾驶汽车安全地把你送回家。这一切看似理所当然,背后却有一双无形的手推动…...

2024年AI 制作PPT新宠儿,3款神器集锦,让你的演示与众不同

咱们今儿聊聊最近超火的AI做PPT的工具。这年头,谁不想省事儿,少熬夜加班,多享受享受生活啊?所以,AI开始帮咱们搞定做PPT这种费时的活儿,我自然得好好研究研究。今天,我就给大家详细说说三款很火…...

CLion和Qt 联合开发环境配置教程(Windows和Linux版)

需要安装的工具CLion 和Qt CLion下载链接 :https://www.jetbrains.com.cn/clion/ 这个软件属于直接默认安装就行,很简单,不多做介绍了 Qt:https://mirrors.tuna.tsinghua.edu.cn/qt/official_releases/online_installers/ window 直接点exe Linux 先c…...

Qt记录使用QtAwesome

Qt记录使用QtAwesome 基本使用 基本使用 pro文件添加 CONFIG fontAwesomeFree include(QtAwesome/QtAwesome.pri) //实例化QtAwesome fa::QtAwesome* awesome new fa::QtAwesome(this); awesome->initFontAwesome();//设置外置适应 图标ICON的颜色color QVariantMap opt…...

ES6新增promise(异步编程新解决方案)如何封装ajax?

1.什么是异步? 异步是指从程序在运行过程中可以先执行其他操作。 2.什么是promise? Promise 是 ES6 引入的异步编程的新解决方案。语法上 Promise 是一个构造函数,用来封装异步 操作并可以获取其成功或失败的结果; 3.promise成功…...

Kubernetes--深入理解Service与CoreDNS

文章目录 Service功能Service 的常见使用场景 Service的模式iptablesIPVS Service类型ClusterIPNodePortLoadBalancerExternalName Service的工作机制EndpointEndpoint 与 Service 的关系Endpoint 的工作原理命令操作 CoreDNSCoreDNS 的配置CoreDNS 的典型插件Corefile 示例Cor…...

AI大模型:开启智能革命新纪元

1.AI大模型技术:智能革命的新引擎 自2022年11月30日OpenAI推出ChatGPT以来,这一大型语言模型(LLM)迅速走红,标志着AI领域进入了一个新的发展阶段,即AI大模型时代。 这一时代预示着AI正朝着通用人工智能&am…...

快速上手C语言【下】(非常详细!!!)

目录 1. 指针 1.1 指针是什么 1.2 指针类型 1.2.1 指针-整数 1.2.2 指针解引用 1.3 const修饰 1.4 字符指针 1.5 指针-指针 1.6 二级指针 2. 数组 2.1 定义和初始化 2.2 下标引用操作符[ ] 2.3 二维数组 2.4 终极测试 3. 函数 3.1 声明和定义 3.2 传值调用…...

红黑树的理解与实现(详解)

相关的数据结构: 搜索二叉树-CSDN博客 AVL树的创建与检测-CSDN博客 个人主页:敲上瘾-CSDN博客 个人专栏:游戏、数据结构、c语言基础、c学习、算法 目录 一、红黑树规则: 二、红黑树的插入 1.变色 2.单旋变色 3.双旋变色 三、…...

从一到无穷大 #37 Databricks Photon:打响 Spark Native Engine 第一枪

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 本作品 (李兆龙 博文, 由 李兆龙 创作),由 李兆龙 确认,转载请注明版权。 文章目录 引言技术决策JVM vs. Native ExecutionInterpreted Vectorization vs Code-GenRow vs…...

Java 字符串占位格式化

Java 提供了几种方式来处理字符串占位符,最常用的是 String 类的 format 方法和 MessageFormat 类。以下是这两种方法的详细说明和示例。 1、String.format 基本语法: String formatted String.format("格式字符串", 参数1, 参数2, ...); …...

基于netty实现简易版rpc服务-理论分析

1.技术要点 1.1 rpc协议 定义一个rpc协议类,用于rpc服务端和客户端数据交互。 1.2 netty粘包半包处理 由于数据传说使用tcp协议,rpc协议的数据在网络传输过程中会产生三种情况: 1)刚好是完整的一条rpc协议数据 2)不…...

Elasticsearch高级搜索技术-全文搜索

目录 倒排索引 (Inverted Index) 示例 分词器 (Analyzer) 评分机制 (Scoring) 查询执行 match 查询 match_phrase 查询 全文搜索是Elasticsearch的核心功能之一,它通过复杂的算法和数据结构来提供高效的搜索能力。为了深入理解其工作原理,我们需要…...

案例分享—国外优秀UI卡片设计作品赏析

国外UI设计注重用户体验,倾向于采用简洁的布局、清晰的排版和直观的交互方式,减少用户的认知负担。卡片式设计能够完美利用屏幕空间,使内容一目了然,易于用户快速浏览和阅读,从而提升了整体的用户体验。 更加注重扁平化…...

Go语言基础学习(Go安装配置、基础语法)

一、简介及安装教程 1、为什么学习Go? 简单好记的关键词和语法;更高的效率;生态强大;语法检查严格,安全性高;严格的依赖管理, go mod 命令;强大的编译检查、严格的编码规范和完整的…...

苍穹外卖--缓存菜品

1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据,减少数据库查询操作。 缓存逻辑分析: ①每个分类下的菜品保持一份缓存数据…...

【git】把本地更改提交远程新分支feature_g

创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...

学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”

2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...

佰力博科技与您探讨热释电测量的几种方法

热释电的测量主要涉及热释电系数的测定,这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中,积分电荷法最为常用,其原理是通过测量在电容器上积累的热释电电荷,从而确定热释电系数…...

C++:多态机制详解

目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...

站群服务器的应用场景都有哪些?

站群服务器主要是为了多个网站的托管和管理所设计的,可以通过集中管理和高效资源的分配,来支持多个独立的网站同时运行,让每一个网站都可以分配到独立的IP地址,避免出现IP关联的风险,用户还可以通过控制面板进行管理功…...

宇树科技,改名了!

提到国内具身智能和机器人领域的代表企业,那宇树科技(Unitree)必须名列其榜。 最近,宇树科技的一项新变动消息在业界引发了不少关注和讨论,即: 宇树向其合作伙伴发布了一封公司名称变更函称,因…...

如何配置一个sql server使得其它用户可以通过excel odbc获取数据

要让其他用户通过 Excel 使用 ODBC 连接到 SQL Server 获取数据,你需要完成以下配置步骤: ✅ 一、在 SQL Server 端配置(服务器设置) 1. 启用 TCP/IP 协议 打开 “SQL Server 配置管理器”。导航到:SQL Server 网络配…...

第八部分:阶段项目 6:构建 React 前端应用

现在,是时候将你学到的 React 基础知识付诸实践,构建一个简单的前端应用来模拟与后端 API 的交互了。在这个阶段,你可以先使用模拟数据,或者如果你的后端 API(阶段项目 5)已经搭建好,可以直接连…...

Spring AOP代理对象生成原理

代理对象生成的关键类是【AnnotationAwareAspectJAutoProxyCreator】,这个类继承了【BeanPostProcessor】是一个后置处理器 在bean对象生命周期中初始化时执行【org.springframework.beans.factory.config.BeanPostProcessor#postProcessAfterInitialization】方法时…...