导读

  最近我手上有个使用Gradle构建的项目,国内使用Gradle的人相对较少。而且我也觉得Gradle的依赖管理方式有些复杂,让我感到有些困惑。因此,我想将项目转换为Maven构建方式。Maven构建的SpringBoot的方式,想必大家都不陌生了吧~我特地记录下来,以备将来可能还会用到。

  这里为了演示方便,我快速创建一个SpringBoot用Gradle构建的项目,将他改成Maven方式构建项目~~~~~

本地安装Gradle

下载地址

https://gradle.org/releases/

https://downloads.gradle.org/distributions/gradle-7.3-all.zip

  注:我下载的是7.3!!!

配置环境变量

# 修改环境变量
vi ~/.bash_profile # 添加如下配置
export GRADLE_HOME="/Users/chenyanbin/plus/gradle-7.3"
export PATH="$PATH:$GRADLE_HOME/bin"
export PATH="$PATH:/Users/chenyanbin/plus/gradle-7.3/bin" # 让配置立即生效
source ~/.bash_profile # 查看gradle版本
gradle -v

新建SpringBoot Gradle构建的项目

Idea配置gradle

Gradle 转 Maven

  注意:Gradle 版本不一样,添加Maven插件方式不一样,我使用的是Gradle 7.3,这个项目我就引入的SpringBoot web依赖和lombok,下面开始Gradle转Maven

操作步骤

  1. 将生成的build中的pom-default.xml 拷贝出去,并重命名pom.xml
  2. 删除之前项目跟gradle相关的文件
  3. 将pom.xml添加至maven
  4. 移除gradle构建项目

  温馨提示:Gradle版本不一样,转换Maven方式!!!我的Gradle 7.3

apply plugin: 'maven-publish'

publishing {
publications {
publish2Local(MavenPublication) {
groupId = project.group
artifactId = "$project.name"
version = project.version
from components.java
}
} repositories {
maven {
url = "$buildDir/repo"
}
}
}

演示

测试一下

  修改端口号、写个Controller  

遇到的问题

  1. maven-publish这个插件不是100%翻译成maven依赖的,可能需要自己解决依赖冲突等问题
  2. 没有翻译过来的依赖,需要自己手动单独添加maven依赖项
  3. Idea没有正确指定Gradle版本,需要指定本地安装的Gradle 7.3

Mac SpringBoot项目 Gradle 7.3 转 Maven 手把手教学,包学会~的更多相关文章

  1. 使用命令把SpringBoot项目打包成可运行的jar包(简洁,操作性强)

    前几天接到一个需求,要把原系统中一个数据处理小功能搬出原系统,拉出来单独做一个SpringBoot项目,然后打成jar包扔到Windows服务器上运行,这样数据处理的时候如果遇到堵塞就不至于整个系统都 ...

  2. IntelliJ IDEA(的springboot项目)环境准备(配置maven和jdk)

    1.配置maven .使用自己电脑上装的maven版本,而非默认的.(方法一) (1)选择configure--Settings (2)搜索maven,配置3.6.2版本的maven.注意:将mave ...

  3. linux/mac下一键删除下载失败的maven jar包

    echo 正在搜索... find . -name "*lastUpdated" | xargs rm -fr echo 搜索完毕

  4. 利用Jenkins实现jdk11+Maven构建springboot项目

    目录 原理图 前期准备 Jdk11安装 Jenkins安装 Maven安装 Jenkins的设置 插件安装 变量配置 搭建项目 1.通用配置 2.源码管理 3.构建触发 4.Maven的构建选项 5. ...

  5. maven项目改造成springboot项目

    springboot项目其实归根到底就是一个maven项目,通常我们创建springboot项目,只要使用idea中的spring Initializr就可以创建就可以了. 今天我们来讲下如何改造一个 ...

  6. 使用idea开发工具,nginx服务部署Extjs6,SpringBoot项目到服务器

    编译ExtJs文件 1.输入命令 2.开始编译 3.找到编译后的文件 E:\idea_project\BaiSheng_Model\fin-ui\build\production\Admin 4.将文 ...

  7. intellij IDEA与springboot项目建立

    概念问题: IntelliJ系中的Project相当于Eclipse系中的workspace.IntelliJ系中的Module相当于Eclipse系中的Project.IntelliJ中一个Proj ...

  8. 使用idea在linux上启动springboot项目

    springboot项目启动方式 1.改成war包放到tomcat上,网上方法很多不再介绍. 2.直接用jar包启动,比较方便,不需要修改项目文件,推荐使用jar包起 将项目和package打成jar ...

  9. ******可用 SpringBoot 项目打包分开lib,配置和资源文件

    spring-boot多模块打包后,无法找到其他模块中的类https://blog.csdn.net/Can96/article/details/96172172 关于SpringBoot项目打包没有 ...

  10. Java SpringBoot 项目构建 Docker 镜像调优实践

    PS:已经在生产实践中验证,解决在生产环境下,网速带宽小,每次推拉镜像影响线上服务问题,按本文方式构建镜像,除了第一次拉取.推送.构建镜像慢,第二.三-次都是几百K大小传输,速度非常快,构建.打包.推 ...

随机推荐

  1. java(方法定义、调用、重载)

    1.方法 Java方法是语句的集合,它们在一起执行一个功能 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 设计方法的原则:就是一个方法只完成一个功能, ...

  2. Java类加载原理中为何要设计双亲委派机制

    首先,给大家演示两个示例代码,我们自定义一个与Java核心类库中java.lang.String类名相同的代码: package java.lang; /** * 自定义java.lang.Strin ...

  3. 【.Net/C#之ChatGPT开发系列】四、ChatGPT多KEY动态轮询,自动删除无效KEY

    ChatGPT是一种基于Token数量计费的语言模型,它可以生成高质量的文本.然而,每个新账号只有一个有限的初始配额,用完后就需要付费才能继续使用.为此,我们可能存在使用多KEY的情况,并在每个KEY ...

  4. 解决 echarts柱状图x轴数据隔一个显示

    echarts柱状图x轴数据隔一个显示   在显示一个柱状图的时候,x轴的数据是隔一个显示的,但是hover的时候却能显示出当前轴x轴的名称,如下图: 那就只能说明这个轴的名称太长了,所以导致它默认就 ...

  5. UI自动化 --- 微软UI Automation

    引言 自动化测试平台的意义就三个字 --- 稳定性. 无论是接口自动化测试,还是UI自动化测试,目的就是为了提高产品的稳定性,保证用户体验. 那常见的接口自动化测试比如有 Postman ,SoapU ...

  6. java端口被占用解决办法

  7. 攻防世界web高手进阶区-ics-06

    今天借着这道web题顺便学会了利用burpsuite进行爆破 先摆题目 打开题目环境,发现是一个工程管理系统,根据题目找到报表中心,点进去 好像没什么收获,F12看一下,发现id =1,试了一下id= ...

  8. Hexo博客Next主题配置加载优化性能提升

    主题源加载优化 把在NexT主题的_config.yml里面的: # Uri of fonts host. E.g. //fonts.googleapis.com (Default) host: 改为 ...

  9. 超详细整合SSM框架--(Spring + Spring MVC + MyBatis)

    超详细整合SSM框架--(Spring + Spring MVC + MyBatis) 阅读该文章之前首先要清楚Spring框架,SpringMVC框架,Mybatis框架. SSM框架,是Sprin ...

  10. golang channel 未关闭导致的内存泄漏

    现象 某一个周末我们的服务 oom了,一个比较重要的job 没有跑完,需要重跑,以为是偶然,重跑成功,因为是周末没有去定位原因 又一个工作日,它又oom了,重跑成功,持续观察,job 在oom之前竟然 ...