Artifactory搭建本地仓库

Artifactory搭建本地仓库

关于Artifactory

Artifactory是什么?

根据官方的解释:

JFrog Artifactory 是目前全球唯一一个支持所有开发语言,任意维度的元数据检索、跨语言正反向依赖分析,并同时拥有深度递归、支持多活异地灾备的企业级、高可用二进制制品管理仓库。世界五百强中93%的企业已经将Artifactory作为自己DevOps的核心系统。

Artifactory搭建本地仓库_第1张图片

什么是制品库

即构建过程的输出物,包括软件包,测试报告,应用配置文件等可在服务器上直接 运行或可查看二进制形式的文件,通常称之为二进制软件制品。不同开发语言 所产生的制品的获取、使用、共享方式不同,不同的制品仓库能够管理各自开发语言类型的二进制制品。制品管理是对软件研发过程中生成的产物的管理, 一般作为最终交付物完成发布和交付。所有的制品包,依赖组件均能够纳入统一 制品库中统一管理。制品库应作为测试及生产部署的唯一可信制品来源。

官网:https://www.jfrogchina.com/

安装&启动

下载Artifactory后,如果环境是window系统,可以直接双击运行bin目录下的artifactory.bat文件,服务器启动成功后,在浏览器地址栏输入:http://localhost:8081/artifactory/,进入后台管理面板。

如果环境是Mac OS系统,通过控制台进入bin目录下输入命令 ./artifactory.sh start 启动服务。

home页面

Artifactory搭建本地仓库_第2张图片

选择创建 本地&远程&虚拟的Maven仓库

Artifactory搭建本地仓库_第3张图片

创建本地仓库

点击左侧菜单栏用户图标,然后选择右侧的Repositories下的Local,在打开的界面中,点击右上角的New,在弹出的界面中选择Maven,输入Repository key,这个key就是本地仓库的名字,可以任意输入,但不能和已存在的仓库重名,输入后,不用修改其它,直接点击右下角的Save&Finish

Artifactory搭建本地仓库_第4张图片

Artifactory搭建本地仓库_第5张图片

Artifactory搭建本地仓库_第6张图片

创建远程仓库

点击左侧菜单栏用户图标,然后选择右侧的Repositories下的Remote,在打开的界面中,点击右上角的New,在弹出的界面中选择Maven,输入Repository key,这个key就是远程仓库的名字,可以任意输入,但不能和已存在的仓库重名,输入后,还需要配置URL选项,配置完成后点击右下角的Save&Finish

PS:在这里推荐AliRepo 仓库服务,URL:https://maven.aliyun.com/mvn/view

Artifactory搭建本地仓库_第7张图片

注意事项:创建远程仓库时,容易出现以下的一个错误,提示Error parsing json body,出现这个问题,是由于Max Unique Snapshots的配置项,Chrome浏览器自己帮我们填充了admin的内容,而这个配置项是一个int的类型,删除默认填充的admin,再次点击Save&Finish就可以创建成功。

一般来说,我们需要创建google,jcenter,public这三个仓库,对应的URL在AliRepo 仓库服务中都可以找到,创建后的效果:

Artifactory搭建本地仓库_第8张图片

创建虚拟仓库

Artifactory搭建本地仓库_第9张图片

上传文件到本地

默认本地文件的size是100M,所以要上传大于100M的文件之前需要先修改默认size

Admin-->Configuration-->General Configuration,把【Bintray Max Files Upload】修改为200M并保存。

Artifactory搭建本地仓库_第10张图片

Artifactory搭建本地仓库_第11张图片

然后上传本地gradle.zip文件

点击左侧菜单栏的Artifacts,选择之前创建的本地仓库,然后点击右上角的Deploy,在弹出的界面,选择需要上传的文件,上传完成后,点击右下角的deply。

Artifactory搭建本地仓库_第12张图片

Artifactory搭建本地仓库_第13张图片

引入Artifactory

修改项目根目录下的build.gradle文件,将buildscriptallprojects节点下的repositories修改为本地搭建的artifactory地址

Artifactory搭建本地仓库_第14张图片

修改gradle-wrapper.properties文件中的distributionUrl的值

Artifactory搭建本地仓库_第15张图片

此时从新编译项目,项目依赖的资源,会先下载到本地仓库,后续再新建项目,依赖的资源如果在本地仓库已经存在,则会先引用本地仓库的资源。通过引用本地仓库,能够加快项目构建。

最后附上使用本地库和不使用本地库编译时间的对比

Artifactory搭建本地仓库_第16张图片

 

你可能感兴趣的:(Artifactory,Android的点点滴滴)