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构建工具实践-(测试成功)
官网:https://gradle.org/releases/ Gradle基于Groovy,具有更灵活更强大的构建系统,能帮助我们构建更复杂的项目。
初始化一个springboot项目 https://start.spring.io/ (也可以下载一个ide)
如果打不开也可以使用:https://start.aliyun.com/bootstrap.html
一个spring boot项目其实有很多依赖。
生成一个标准的Gradle项目:
jar包:可执行的程序。(目前基本是这种)
war包:需要放到容器里,例如tomcat里,需要支持jsp环境的那种,才可以解析。
以上配置完成后,点击Generate
,生成测试代码。
代码下载完成 后,可以用vscode打开,看下项目代码结构:
devops6-gradle-service
项目注意:这里取消勾选初始化仓库配置项。
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
提前安装好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
https://gradle.org/releases/
###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
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上确认:
[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://[email protected]: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构建失败,都和网络有关系,再次重试下就行。
再次构建,速度就很快了:
见上部分2.创建gitlab仓库并上传代码
内容。
devops6-maven-service
来拷贝创建devops6-gradle-service
pipeline类型作业,点击保存。然后这里改变一些参数值:
其它都是一样的,点击保存。
pipeline {
agent {label "build"}
stages{
stage("CheckOut"){
steps{
script{
println("CheckOut")
checkout([$class: 'GitSCM',
branches: [[name: "${env.branchName}"]],
extensions: [],
userRemoteConfigs: [[credentialsId: 'gitlab-root', url: "${env.srcUrl}"]]])
sh "ls -l" //验证
}
}
}
stage("Build"){
steps{
script{
println("Build")
sh "${env.buildShell}"
}
}
}
}
}
测试结束。
gradle build 构建项目
gradle build -x test 构建项目跳过测试
gradle clean 清空构建目录
我的博客主旨:
微信二维码
x2675263825 (舍得), qq:2675263825。
微信公众号
《云原生架构师实战》
语雀
https://www.yuque.com/xyy-onlyone
csdn
https://blog.csdn.net/weixin_39246554?spm=1010.2135.3001.5421
知乎
https://www.zhihu.com/people/foryouone
好了,关于本次就到这里了,感谢大家阅读,最后祝大家生活快乐,每天都过的有意义哦,我们下期见!