2、Gradle构建工具实践
实战:Gradle构建工具实践-2023.6.22(测试成功)
目录
[toc]
推荐文章
https://www.yuque.com/xyy-onlyone/aevhhf?# 《玩转Typora》
实验环境
gitlab/gitlab-ce:15.0.3-ce.0
jenkins/jenkins:2.346.3-2-lts-jdk11
gradle-7.6.1
openjdk 11.0.18
实验软件
链接:https://pan.baidu.com/s/1OQaybJhxxCiGUo0Cjo6cTQ?pwd=0820 提取码:0820
2023.6.22-实战:Gradle构建工具实践-(测试成功)
1、Gradle构建工具配置
官网:https://gradle.org/releases/ Gradle基于Groovy,具有更灵活更强大的构建系统,能帮助我们构建更复杂的项目。
1.spring boot项目生成
初始化一个springboot项目 https://start.spring.io/ (也可以下载一个ide) 如果打不开也可以使用:https://start.aliyun.com/bootstrap.html
一个spring boot项目其实有很多依赖。
生成一个标准的Gradle项目:
- 项目类型: Gradle-Groovy
- 语言: Java
- SpringBoot: 2.7.12 (版本)(随着时间变化版本号会变,默认即可)
- Metadata
- Group : 组信息
- Artifact:包名称
- Packging: 包格式(Jar、War)
- Dependencies: 定义项目依赖(最后都会写入Pom.xml)
jar包:可执行的程序。(目前基本是这种) war包:需要放到容器里,例如tomcat里,需要支持jsp环境的那种,才可以解析。
以上配置完成后,点击Generate
,生成测试代码。
代码下载完成 后,可以用vscode打开,看下项目代码结构:
2.创建gitlab仓库并上传代码
- 创建一个
devops6-gradle-service
项目
注意:这里取消勾选初始化仓库配置项。
- 在本地git端将项目代码上传到刚才创建的项目里:
Push an existing folder
cd existing_folder
git init --initial-branch=main
git remote add origin http://172.29.9.101:8076/devops6/devops6-gradle-service.git
git add .
git commit -m "Initial commit"
git push -u origin main
自己推送过程:
git init --initial-branch=main
git remote add origin http://172.29.9.101:8076/devops6/devops6-gradle-service.git
git add .
git commit -m "Initial commit"
git push -u origin main
- 到gitlab查看推送上来的代码:
3.配置Gradle环境
提前安装好JDK, 然后安装gradle-7.6.1。
本次在gitlanci-runner上下载Gradle:(后面的环境为gitlab runner和jenkins agent都在一台机器上)
1、JDK环境自己之前已经安装好。
如何安装JDK环境,请查看我的另一篇文章!
本地文档路径:实战:Linux下jdk8环境安装(测试成功)-2022.4.16(二进制方式)
(jdk11安装方式一样)
网络文档路径:https://blog.csdn.net/weixin_39246554/article/details/124221560
2、安装gradle-7.6.1
###1、下载gradle-7.6.1软件包并解压
[root@Devops6 ~]#ll -h gradle-7.6.1-bin.zip
-rw-r--r-- 1 root root 117M Jun 22 08:17 gradle-7.6.1-bin.zip
[root@Devops6 ~]#unzip gradle-7.6.1-bin.zip -d /usr/local/
###2、配置环境
[root@Devops6 ~]#vim /etc/profile
……
export GRADLE_HOME=/usr/local/gradle-7.6.1/
export PATH=$GRADLE_HOME/bin:$PATH
[root@Devops6 ~]#source /etc/profile
###3、验证
[root@Devops6 ~]#gradle -v
Welcome to Gradle 7.6.1!
Here are the highlights of this release:
- Added support for Java 19.
- Introduced `--rerun` flag for individual task rerun.
- Improved dependency block for test suites to be strongly typed.
- Added a pluggable system for Java toolchains provisioning.
For more details see https://docs.gradle.org/7.6.1/release-notes.html
------------------------------------------------------------
Gradle 7.6.1
------------------------------------------------------------
Build time: 2023-02-24 13:54:42 UTC
Revision: 3905fe8ac072bbd925c70ddbddddf4463341f4b4
Kotlin: 1.7.10
Groovy: 3.0.13
Ant: Apache Ant(TM) version 1.10.11 compiled on July 10 2021
JVM: 11.0.18 (Red Hat, Inc. 11.0.18+10-LTS)
OS: Linux 3.10.0-957.el7.x86_64 amd64
4.配置Gradle镜像源
- 修改Gradle源为国内阿里源
https://developer.aliyun.com/mvn/guide?spm=a2c6h.13651104.mirror-free-trial.5.10596e1aktMoO5
maven {
url 'https://maven.aliyun.com/repository/public/'
}
这里在本地更改代码,然后推送到gitlab仓库:
repositories {
maven {
url 'https://maven.aliyun.com/repository/public/'
}
}
推送代码:
$ git add -A
$ git commit -m "update repo"
$ git push
再到gitlab上确认:
5.手动测试代码
- 下载代码
[root@Devops6 ~]#cd /data/devops6/
[root@Devops6 devops6]#ls
devops6-maven-service gitlab jenkins_agent jenkins_home
[root@Devops6 devops6]#git clone http://172.29.9.101:8076/devops6/devops6-gradle-service.git
Cloning into 'devops6-gradle-service'...
Username for 'http://172.29.9.101:8076': root
Password for 'http://root@172.29.9.101:8076':
remote: Enumerating objects: 29, done.
remote: Counting objects: 100% (29/29), done.
remote: Compressing objects: 100% (18/18), done.
remote: Total 29 (delta 2), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (29/29), done.
[root@Devops6 devops6]#ls
devops6-gradle-service devops6-maven-service gitlab jenkins_agent jenkins_home
[root@Devops6 devops6]#cd devops6-gradle-service/
[root@Devops6 devops6-gradle-service]#ls
build.gradle gradle gradlew gradlew.bat settings.gradle src
[root@Devops6 devops6-gradle-service]#
- 打包
[root@Devops6 devops6-gradle-service]#gradle build
==大部分gradle构建失败,都和网络有关系,再次重试下就行。==
再次构建,速度就很快了: