Jenkins 搭建HmcPlayer自动化编译及自动发版到maven仓

本文详细介绍了如何利用Jenkins搭建HmcPlayer项目的自动化编译流程,并在构建成功后自动发布到Maven仓库。首先讲解了在Jenkins上新建项目、配置构建参数和自动化编译脚本的步骤。接着,文章阐述了如何搭建和配置Sonatype Nexus Maven仓库,包括Java环境设置、下载与安装、运行和检查仓库状态。最后,提供了上传脚本和依赖配置的示例,完成HmcPlayer的发版上传。
摘要由CSDN通过智能技术生成

1, 前言

项目开发的过程中,为了集成测试的方便及版本管控需求,经常需要发版给开发 或者测试进行问题的测试验证,Jenkins 可以实现自动化编译,maven仓可以实现版本发布及备份等

下面 主要讲 如何在Jenkins 上搭建一个 自动化编译项目,并在编译成功后自动发版到maven,供其他开发使用。

2,准备工作:

Jenkins 环境

3,如何在Jenkins构建一个自动化编译项目

3.1如何在Jenkins上新建一个项目


点击新建,输入你需要构建的自动化项目名称 比如 HmcPlayer ,点击ok键

在这里插入图片描述
点击ok 之后会出现如下

在这里插入图片描述

保存 应用之后 会出现如下界面,至此 HmcPlayer项目新建 完成
在这里插入图片描述

3.2 配置HmcPlayer 项目 Jenkins的构建参数

点击配置后出现如下界面,依次配置你需要的参数
在这里插入图片描述

在这里插入图片描述

3.3 配置自动化编译脚本,点击 保存 应用即可

在这里插入图片描述

3.4 编译项目 点击如下 Build with Parameters

在这里插入图片描述
点击如下 开始构建

在这里插入图片描述
构建进度如下
当 构建进度 为红时 代表构建失败否则构建成功
在这里插入图片描述

4 如何查看构建失败 日志信息

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.1 查看构建环境变量

在这里插入图片描述
至此 HmcPlayer 项目自动化编译搭建完成,下面讲一讲 如何将编译后的 apk / AAR /JAR 包 如何发布到maven仓中。

5 如何将编译后的 apk / AAR /JAR 包 如何发布到maven仓?

5.1 搭建maven仓库

本文介绍的是Sonatype 的 Nexus

5.1.1 java环境

要运行 Nexus,需要 Java 环境,根据教程进行 Oracle Java 安装和配置 即可,配置好环境就可以进行下一步了

5.1.2 下载 Sonytype

到 Sonytype 官网 https://www.sonatype.com/download-oss-sonatype 下载自己所需的平台和版本

本篇介绍的是下载 Linux 环境下的,因为我是在Linux 服务器搭建的maven仓,搭建也可以根据自己的需求进行搭建 大同小异。

在这里插入图片描述
在这里插入图片描述

5.1.3解压之后 会有类似如下两个目录

在这里插入图片描述
nexus-3.14.0-04 这个 文件是存放程序的

sonatype-work这个文件夹是存放仓库和设置等相关内容的,如果备份数据,只用备份这个文件夹即可

5.1.4初次配置,我们只用关注如下几个文件即可

文件 备注
./ nexus-3.14.0-04/bin/nexus 运行程序
./ nexus-3.14.0-04/bin/nexus.rc 用户配置
./ nexus-3.14.0-04/etc/nexus-default.properties 端口配置

初期需要了解的文件就这三个,在 Linux 系统上使用 root 用户直接运行可能会警告,因此可以配置一下nexus.rc文件。至于端口号,默认是 8081,如果对这个没特殊要求,默认即可。

至于 ./ nexus-3.14.0-04/bin/nexus 是主要的运行程序,建议将 bin 目录配置到环境变量中,这样就可以在任意位置启动和停止该程序了,否则只有在 bin 目录下才能调整。

5.1.5 运行

nexus start
如果一切顺利,在等待几十秒到一两分钟之后就可以查看我们的仓库了,如果出错了,可以使用 run 命令来查看具体的出错原因:
#run 命令相当于 debug 模式,会输出所有的日志信息
nexus run

Nexus 还有很多其他命令(例如:停止、重启、查看状态等)
nexus {start|stop|run|run-redirect|status|restart|force-reload}

5.1.6 查看

在输入 nexus start 命令后,稍微等待一两分钟,就可以查看仓库了,如果在本机有图形化界面,直接在浏览器中输入 http://localhost:8081 即可查看,如果修改了端口号,后面写对应的端口号即可。如果是运行在服务器上,则在其他电脑上输入http://{服务器ip}:{port} IP 和对应的端口号。如果运行成功,则会看到类似如下界面:

在这里插入图片描述
备注:

在 Linux 和 Mac 上通过 ifconfig 查看本机 IP。
在 Windows 上通过 ipconfig 查看本机 IP。
127.0.0.1(localhost) 是本机回环地址,在其他机器上访问时不要使用这个地址

5.2 仓库配置

经过上面的步骤,我们就有了一个空仓库,但是这个仓库还还需要进行一些基础的配置。

5.2.1 账号配置

点击界面右上角的 Sign In 进行登录。
初次登陆时使用默认账号:admin,密码:admin123。
在这里插入图片描述

5.2.2 登录后创建一个新用户

在这里插入图片描述

5.2.3 创建仓库 仓库也是在设置中进行创建的

在这里插入图片描述

在这里插入图片描述
我们用 maven 仓库即可,可以看到,仓库主要有三种类型:

hosted: 本地仓库,我们一般使用这种类型的仓库。
proxy: 代理仓库,用于代理其他远程仓库。
group: 仓库组,用来合并多个 hosted / proxy 仓库。
在一般情况下,我们创建 hosted 类型的 maven 仓库
填写仓库信息

在这里插入图片描述

5.3 上传脚本

apply plugin: ‘maven-publish’
apply plugin: ‘maven’
uploadArchives {
repositories {
mavenDeployer {
repository(url: uri("KaTeX parse error: Expected '}', got 'EOF' at end of input: … userName: "{rootProject.ext.repoUser}",
password: “${rootProject.ext.repoPwd}”)
}
pom.groupId = ‘com.pptv.hmc.hmcplayer’
pom.artifactId = ‘libcore’
pom.version = rootProject.ext.repoVersion
pom.packaging = ‘aar’
}
}
}

5.4 添加依赖配置

allprojects {
repositories {

    maven { url 'https://jitpack.io' }
    // local disk or remote maven
    maven { url uri("${rootProject.ext.repoUrl}") }
    maven { url "http://maven.hmc.pptv.com:8181/repository/hmcplayer/" }
    // youku maven
    maven {
        url "https://repo.rdc.aliyun.com/repository/28454-release-bMUwSr/"
        credentials {
            username "kophPk"
            password "grBjUv42cL"
        }
    }
    // youku maven snapshot
    maven {
        url "https://repo.rdc.aliyun.com/repository/28454-snapshot-XEw1RC/"
        credentials {
            username "kophPk"
            password "grBjUv42cL"
        }
    }
    google()
    jcenter()
}

}

6,HmcPlayer 发版 上传脚本

在这里插入图片描述

至此 Jenkins 搭建HmcPlayer自动化编译及自动发版到maven仓 完成 ,如有疑问 私聊我!345643127@qq.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值