使用Gradle7.6+SpringBoot 3.0+java17创建微服务项目
系列文章目录
学习新版本,菜鸟一枚
会持续更新的
文章目录
- 系列文章目录
- 前言
- 一、搭建项目
- 1.1、创建git仓库
- 1.1.1、登录gitee,新建仓库
- 1.1.2、得到如下命令(`新建仓库使用创建git仓库 即可`)
- 1.2、使用IDEA创建项目
- 1.2.1、开发工具
- 1.2.2、后端技术
- 1.2.3、 创建gradle项目
- 1.2.4、创建子模块
- 1.2.5、修改父类 `build.gradle`文件
- 1.2.6、修改子模块 `build.gradle`文件
- 1.2.7、构建项目
- 1.2.8、上传git仓库
- 1.2.9、git 常用知识浅谈
- 二、嗯,还没想法写啥,先发送吧
- 总结
前言
求其上者得其中,求其中者得其下,求其吓着无所得。
想着系统的学习一下SpringCloud alibaba项目,做个记录。
一、搭建项目
1.1、创建git仓库
1.1.1、登录gitee,新建仓库

1.1.2、得到如下命令(新建仓库使用创建git仓库 即可)
简易的命令行入门教程:
Git 全局设置:git config --global user.name "xxx"
git config --global user.email "xxxx@126.com"
创建 git 仓库:mkdir gods
cd gods
git init
touch README.md
git add README.md
git commit -m "first commit"
git remote add origin https://gitee.com/xxxxxxxx/gods.git
git push -u origin "master"
已有仓库?cd existing_git_repo
git remote add origin https://gitee.com/xxxxxxx/gods.git
git push -u origin "master"
现在去打开IDEA去创建项目,记住 项目名称要跟本地的一致哦
1.2、使用IDEA创建项目
1.2.1、开发工具
| 工具 | 版本 | 官网 |
|---|---|---|
| IDEA | 2022.2.4 | https://www.jetbrains.com/idea/download |
| Gradle | 7.6 | https://gradle.org/releases/ |
| Java | 17 | https://www.oracle.com/java/technologies/downloads/#jdk17-windows |
| MySQL | 8.0.32 |
1.2.2、后端技术
| 技术 | 版本 | 官网 |
|---|---|---|
| SpringBoot | 3.1.0-M1 | https://spring.io/projects/spring-boot |
| SpringCloudAlibaba | 2022.0.0.0-RC1 | https://spring.io/projects/spring-cloud-alibaba |
| SpringCloud | 2022.0.2 | https://spring.io/projects/spring-cloud |
| Mybatis-Plus | 3.5.3.1 | https://mybatis.plus/ |
1.2.3、 创建gradle项目


这里选择我们要使用的gradle7.6版本

这里可以看到我们项目创建完成后的目录结构,
删掉src目录

1.2.4、创建子模块
右键项目,创建子模块

注意是选择 New Module,别问为什么,问就是没看到踩坑了

然后以同样的方式,在去创建几个子模块,如下图

可以看到,每个子模块都生成了
build.gradle,文件类似于 pom文件
此时我们在看
settings.gradle文件,就会发现,已经自动生成了子模块引入目录

1.2.5、修改父类 build.gradle文件
buildscript{
}//插件
plugins {id 'io.spring.dependency-management' version '1.0.11.RELEASE'id 'org.springframework.boot' version '3.1.0-M1'id 'java'
}//全局项目配置
allprojects{group = 'com.example'version = '0.0.1-SNAPSHOT'apply plugin:'idea'apply plugin: 'io.spring.dependency-management'apply plugin: 'org.springframework.boot'//jar包寻找顺序从上到下repositories {mavenLocal()maven { url 'https://maven.aliyun.com/repository/public/' }maven { url 'https://maven.aliyun.com/repository/google/' }maven { url 'https://maven.aliyun.com/repository/jcenter/' }maven { url "https://mvn.getui.com/nexus/content/repositories/releases/" }maven {url 'http://mirrors.huaweicloud.com/repository/maven/'allowInsecureProtocol = true}mavenCentral()}}//子模块配置
subprojects{apply plugin:'java'// 指定JDK版本sourceCompatibility = '17'targetCompatibility = '17'[compileJava,compileTestJava,javadoc]*.options*.encoding = 'UTF-8'/// 子模块公共jar \\\dependencies{compileOnly 'org.projectlombok:lombok:1.18.26'implementation 'org.projectlombok:lombok:1.18.26'implementation 'cn.hutool:hutool-all:5.8.18'}}
1.2.6、修改子模块 build.gradle文件
archivesBaseName = 模块名称
每个子模块都是这么多初始化代码,后续根据需要引入各自需要的依赖
archivesBaseName = "gods-apollo"
dependencies {// 专属于这个模块的依赖
}
// 动态移除对kotlin构建插件的权限,避免子模块构建报错
tasks.register("prepareKotlinBuildScriptModel") {}//include 'gods-apollo'
//include 'gods-athena'
//include 'gods-Zeus'
//include 'gods-Ares'
1.2.7、构建项目
BUILD SUCCESSFUL in 2s,成功后开始同步git
1.2.8、上传git仓库
这里是引用
- 打开git,进入项目文件中
git init初始化gittouch README.md创建版本文件git status查看当前工作区文件状态git add .上传所有文件到 暂存区git commit -m " 提交注释"提交文件到本地仓库git remote add origin https://gitee.com/wan_long_bei/gods.git添加远程仓库origin,建立关联git push -u origin "master"把当前分支master推送到远程仓库origin

1.2.9、git 常用知识浅谈

PS:图片来源
workspace:工作区,平时存放代码的位置 staging
area:暂存区/缓存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息 local
repository:本地仓库,就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本 remote
repository:远程仓库,托管代码的服务器
代码从修改到提交到远程仓库,一般需要经历如下5个状态:未修改,已修改,已暂存,已提交,已推送。如下所示:
未修改原始内容
已修改 ↓ 工 作 区
已暂存 ↓ git add暂 存 区
已提交 ↓ git commit本地仓库
已推送 ↓ git push远程仓库
注意事项
git init会在项目根目录下初始化一个.git目录,git仓库必须
remote只需执行一次,yourRepository.git是你在github已有的一个仓库
.gitignore,这个文件写入所有不需要加入版本管理的文件,尤其像node_modules
二、嗯,还没想法写啥,先发送吧
总结
切勿着急,欲速则不达
| 技术 |
|---|
| 亢龙, 有悔 |
飞龙在天 , 利见大人 九五 |
| 或跃在渊, 无咎 |
| 君子终日乾乾,夕依若厉无咎 |
| 见龙在田, 利见大人 |
| 潜龙,勿用 |
相关文章:
使用Gradle7.6+SpringBoot 3.0+java17创建微服务项目
系列文章目录 学习新版本,菜鸟一枚 会持续更新的 文章目录 系列文章目录前言一、搭建项目1.1、创建git仓库1.1.1、登录gitee,新建仓库1.1.2、得到如下命令(新建仓库使用创建git仓库 即可) 1.2、使用IDEA创建项目1.2.1、开发工具1.…...
pandas使用教程:apply函数、聚合函数agg和transform
文章目录 apply函数调用apply函数描述性统计apply函数lambda自定义 聚合函数aggregate/agg用字典实现聚合 transform函数多函数 Transform 重置索引与更换标签行重置索引行和列同时重置索引 apply函数调用 apply函数描述性统计 import numpy as np df.loc[:,Q1:Q4].apply(np.…...
使用rasterio裁剪遥感影像
文章目录 0. 数据准备1. polygon的坐标系转换1.1 polygon生成1.1.1 输入数据是shapefile1.1.2 输入数据是polygon 1.2 搞清楚遥感的坐标系和polygon的坐标系(重点)1.3 开始转换 2. 基于polygon的遥感影像裁剪2.1 基础裁剪方法2.1.1 使用rasterio保存2.1.2 使用numpy保存2.2 多线…...
BetaFlight统一硬件配置文件研读之set命令
BetaFlight统一硬件配置文件研读之set命令 1. 源由2. 代码分析3. 实例分析4. 配置情况4.1 set4.2 set parameter_name4.3 set parameter_name value 5. 参考资料 统一硬件配置文件的设计是一种非常好的设计模式,可以将硬件和软件的工作进行解耦。 1. 源由 cli命令…...
QT+OpenGL高级数据和高级GLSL
QTOpenGL高级数据和高级GLSL 本篇完整工程见gitee:QtOpenGL 对应点的tag,由turbolove提供技术支持,您可以关注博主或者私信博主 高级数据 OpenGL中的缓冲区 对象管理特定的GPU内存 在将缓冲区绑定到特定的缓冲区目标时候赋予它意义 OpenGL在内部会保…...
接口测试之Jmeter+Ant+Jenkins接口自动化测试平台
目录 平台简介 环境准备 Jenkins简介 下载与安装 平台搭建 依赖文件配置 build.xml配置 Ant构建 阿里大佬倾情演绎,3天让你学会Jmeter接口测试,学不会算我输_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1Q84y1K7bK/?spm_id_from333.99…...
FPGA设计中锁存器产生、避免与消除
FPGA设计中锁存器产生、避免与消除 一、锁存器的产生1.1 组合逻辑中使用保持状态1.2 组合逻辑中的if-else语句或case语句未列出所有可能性1.3 小结 二、锁存器的避免三、锁存器的消除3.1 情况一 一、锁存器的产生 锁存器的产生主要有以下两种情况:(1&…...
一份标准的软件测试方案模板
第一章 概述 软件的错误是不可避免的,所以必须经过严格的测试。通过对本软件的测试,尽可能的发现软件中的错误,借以减少系统内部各模块的逻辑,功能上的缺陷和错误,保证每个单元能正确地实现其预期的功能。检测和排…...
【C++】-对于自定义类型的输入输出运算符重载
💖作者:小树苗渴望变成参天大树 ❤️🩹作者宣言:认真写好每一篇博客 💨作者gitee:gitee 💞作者专栏:C语言,数据结构初阶,Linux,C 文章目录 前言一、案例引入二、<<的重载三、>>的…...
(详解)js中什么是宏任务、微任务?宏任务、微任务有哪些?又是怎么执行的?
目录 参考资料 必看强烈建议十分钟看完视频 ,即可学会 必看参考详解宏任务微任务 笔记 宏任务与微任务 定时器的任务编排 promise的微任务处理逻辑 DOM渲染任务 任务队列共享内存 进度条的实现 任务拆分成多个任务 promise复杂任务分割 img算同步还是异步…...
Okta 即代码:云原生时代的身份管理
我们为什么应该将 Okta 配置作为代码进行管理? 对于需要跨多个应用程序和环境管理对其数字资源的访问的组织来说,Okta 可能是最受欢迎的选择,因为它提供了一系列使其在身份验证和授权方面很受欢迎的功能,例如: 单点登…...
数据结构(六)—— 二叉树(7)构建二叉树
文章目录 如何使用递归构建二叉树1、创建一颗全新树(题1-5)2、在原有的树上新增东西(题6) 1 106 从 后序 与 中序 遍历序列构造二叉树2 105 从 前序 与 中序 遍历序列构造二叉树3 108 将有序数组转换为二叉搜索树(输入…...
安装适用于Linux的Windows11子系统(WSL2)
1. 主板BIOS开启虚拟化 开启虚拟化需要在BIOS中进行设置,进入主板BIOS→找到虚拟化设置→开启。 2. 检验是否开启虚拟化 打开Windows命令行,并运行 systeminfo固件中已启用虚拟化为是,代表主板BIOS已经开启虚拟化。 3. 启用Windows功能…...
使用Spring的五大类注解读取和存储Bean
目录 1.存储Bean对象的注解 1.1 五大类注解 1.2 方法注解 1.3添加注解的依赖 2.注解的使用 2.1 controller注解 2. 2Service注解 2.3.Resopsitory注解 2.4Component注解 2.5Configuration注解 2.6 注解之间的关系 3.方法注解 3.1 方法注解要配合类注解来使用。 3.2…...
Vue3通透教程【十一】初探TypeScript
文章目录 🌟 写在前面🌟 TypeScript是什么?🌟TypeScript 增加了什么?🌟TypeScript 初体验🌟 写在最后🌟 写在前面 专栏介绍: 凉哥作为 Vue 的忠实 粉丝输出过大量的 Vue 文章,应粉丝要求开始更新 Vue3 的相关技术文章,Vue 框架目前的地位大家应该都晓得,所谓…...
Linux环境安装iperf3(网络性能测试工具)
[rootlocalhost ]# yum search iperf 已加载插件:fastestmirror Loading mirror speeds from cached hostfile* base: mirrors.tuna.tsinghua.edu.cn* extras: mirrors.huaweicloud.com* updates: mirrors.tuna.tsinghua.edu.cnN/S matched: iperf iperf3-devel.i6…...
回顾第一章
回顾 Shell脚本中的$虚函数虚函数和纯虚函数 git merge/rebasegit merge特点git rebase特点 Linux内核调试——coredump获取core dump 深度测试和模板测试2D游戏的制作思路C11特性 Shell脚本中的$ $0: 脚本自身的名称; $1: 传入脚本的第一个参数; $2…...
Jupyter Notebook入门教程
Jupyter Notebook(又称Python Notebook)是一个交互式的笔记本,支持运行超过40种编程语言。本文中我们将介绍Jupyter Notebook的主要特点,了解为什么它能成为人们创造优美的可交互式文档和教育资源的一个强大工具。 首先ÿ…...
独立按键识别
项目文件 文件 关于项目的内容知识点可以见专栏单片机原理及应用 的第四章 IO口编写 参考图电路编写程序,要求实现如下功能: 开始时LED均为熄灭状态,随后根据按键动作点亮相应LED(在按键释放后能继续保持该亮灯状态,直至新的按键压下时为止…...
【论文阅读】AlphaFold2阅读笔记
摘要 给一串氨基酸的序列,去预测他的结构是什么样的 蛋白质的折叠问题 alphaFold精度不够 这里可以达到原子精度的预测 CASP14 精度 这个是什么问题是不是解决了问题 模型的结果并不重要 导论 摘要故事的详细版本 在写论文的时候,可以这样写&a…...
KubeSphere 容器平台高可用:环境搭建与可视化操作指南
Linux_k8s篇 欢迎来到Linux的世界,看笔记好好学多敲多打,每个人都是大神! 题目:KubeSphere 容器平台高可用:环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...
零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?
一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...
AI Agent与Agentic AI:原理、应用、挑战与未来展望
文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...
Java 8 Stream API 入门到实践详解
一、告别 for 循环! 传统痛点: Java 8 之前,集合操作离不开冗长的 for 循环和匿名类。例如,过滤列表中的偶数: List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...
【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密
在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...
macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用
文章目录 问题现象问题原因解决办法 问题现象 macOS启动台(Launchpad)多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显,都是Google家的办公全家桶。这些应用并不是通过独立安装的…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...
Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!
一、引言 在数据驱动的背景下,知识图谱凭借其高效的信息组织能力,正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合,探讨知识图谱开发的实现细节,帮助读者掌握该技术栈在实际项目中的落地方法。 …...
vue3+vite项目中使用.env文件环境变量方法
vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量,这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...
【分享】推荐一些办公小工具
1、PDF 在线转换 https://smallpdf.com/cn/pdf-tools 推荐理由:大部分的转换软件需要收费,要么功能不齐全,而开会员又用不了几次浪费钱,借用别人的又不安全。 这个网站它不需要登录或下载安装。而且提供的免费功能就能满足日常…...
