最新jfrog artifactory搭建Android本地仓库教程

提高gradle编译速度 jfrog artifactory本地仓库搭建

  • 前言
  • 什么是本地仓库
  • jfrog本地仓库搭建
  • 更改项目仓库地址
  • 解决Received status code 401 from server: Unauthorized问题
  • 本地仓库文件路径

前言

最近经常在家里写代码,因为家里没有搭建本地仓库,所以每次gradle同步都要等待很长时间,经常把时间消耗在这种毫无意义的等待中,于是我铁下心来决定自己在家中搭建一个Android的本地仓库。

什么是本地仓库

关于本地仓库的解释网上可以查到很多资料,感兴趣的同学可以自己搜索,我就不再阐述。我这里解释下为什么本地仓库可以提高gradle同步速度,本地仓库相当于是本地的一个缓存服务器,会缓存之前下载过的资源(如果本地仓库搭建在自己的电脑则可以在磁盘的某个位置找到这些资源),下次gradle同步时发现本地仓库已经有该资源就会直接读取,如果没有才会去远程仓库获取,这样可以避免每次都去远程服务器下载资源,当然如果你本地仓库缓存是空的那还是得去远程仓库下载的,这里为了提高下载速度可以在远程仓库中引入阿里云镜像,相当于增加了一个二级缓存,这样本地仓库没有缓存,可以从阿里云镜像获取,如果阿里云镜像也没有才会去真正的服务器下载,可以进一步提高下载速度。

所以,关于本地仓库总结几点:

  1. 本地仓库可以理解为是一个缓存服务器,下载过的资源会缓存到本地。
  2. 加了本地仓库后gradle同步的快慢取决于本地仓库是否有对应资源的缓存,所以在自己电脑搭建本地仓库自己使用和在局域网某台服务器搭建本地仓库供多人使用,这两种场景对gradle同步速度的提升效果是不一样的,后者明显会比前者效果更好,这就是为什么大部分公司都会搭建本地仓库的私服,这样只要有一人下载了某个资源,其他人就可以直接从本地仓库获取该资源了。
  3. 为了提高下载速度,本地仓库搭建时通常会把国内的一些maven仓库作为代理服务器,比如把阿里云镜像添加为远程仓库,这样就相当于增加了一个二级缓存,可以大大避免到国外服务器去下载资源的情况。

jfrog本地仓库搭建

jfrog搭建本地仓库的教程网上也有很多资料,但是我发现都是比较旧的一些内容了,所以今天的教程主要是基于最新的jfrog版本的本地仓库搭建,希望能够让小白快速上手。

首先需要去官网下载jfrog安装包,打开后可能会有这样的提示容易误导大家,这时候直接点击关掉弹窗,然后点击右上角的Downloades,会往下滑到下载地址的位置,然后选择平台直接下载即可。
最新jfrog artifactory搭建Android本地仓库教程_第1张图片
最新jfrog artifactory搭建Android本地仓库教程_第2张图片
安装包下载完成后解压,找到artifactory.bat双击即可启动jfrog服务器。
最新jfrog artifactory搭建Android本地仓库教程_第3张图片
接着打开浏览器输入localhost:8081即可打开jfrog控制台。第一次打开可能需要你输入用户名和密码,默认的用户名和密码是admin和password。

接下来开始新建一个本地仓库。
找到Repository选项的Local栏目,在右上角点击新建仓库。Package Type选择Maven,Repository Key随便输入一个名字然后点击右下角的保存即可。
最新jfrog artifactory搭建Android本地仓库教程_第4张图片
最新jfrog artifactory搭建Android本地仓库教程_第5张图片
最新jfrog artifactory搭建Android本地仓库教程_第6张图片
接下来往本地仓库上传资源。找到刚才创建好的本地仓库点击Deploy。
最新jfrog artifactory搭建Android本地仓库教程_第7张图片
最新jfrog artifactory搭建Android本地仓库教程_第8张图片
如果提示你安装包过大是因为jfrog默认最大只能上传100m的资源,这时候可以去设置里更改,然后再重新上传,这里我把最大值调整到了1000m。
最新jfrog artifactory搭建Android本地仓库教程_第9张图片
最新jfrog artifactory搭建Android本地仓库教程_第10张图片
现在我们已经创建好了一个本地仓库并且上传了资源,接下来开始创建远程仓库。

找到Repository选项的Remote栏目,在右上角点击新建仓库。Package Type选择Maven,Repository Key随便输入一个名字然后点击右下角的保存即可。因为我搭建的是Android的仓库,所以我创建了aliyun_google,aliyun_maven和aliyun_public三个远程仓库。
最新jfrog artifactory搭建Android本地仓库教程_第11张图片
到这里就创建好了本地仓库和远程仓库,这时候项目如果要引用的话需要同时依赖多个仓库,所以我们再创建一个虚拟仓库,统一管理本地和远程仓库,项目中只需要引用虚拟仓库即可。

找到Repository选项的Virtual栏目,在右上角点击新建仓库。Package Type选择Maven,Repository Key随便输入一个名字,我这里取名为my_virtual_repo。
最新jfrog artifactory搭建Android本地仓库教程_第12张图片
选择需要加入虚拟组的仓库,点击往右的箭头,最后点击右下角的保存即可。
最新jfrog artifactory搭建Android本地仓库教程_第13张图片

更改项目仓库地址

jfrog仓库创建好后,就需要在项目中使用它。打开项目根目录的gradle文件,将仓库地址改成我们自己的本地仓库地址:http://localhost:8081/artifactory/my_vrtiual_repo/,完成后同步下gradle则可从本地仓库下载资源。
最新jfrog artifactory搭建Android本地仓库教程_第14张图片

解决Received status code 401 from server: Unauthorized问题

我在完成以上步骤后同步gradle会出现一个Received status code 401 from server: Unauthorized的错误,这时候只需要打开jfrog后台,进入安全设置界面,选中Allow Anonymous Access,然后点击保存即可。
最新jfrog artifactory搭建Android本地仓库教程_第15张图片

本地仓库文件路径

如果本地仓库是创建在自己电脑上的,那么我们可以在磁盘上找到本地仓库缓存的资源。
打开jfrog控制台,找到Monitoring -> Storage即可找到资源的本地缓存路径。
最新jfrog artifactory搭建Android本地仓库教程_第16张图片
打开文件夹后发现这里确实已经缓存了不少资源文件。
最新jfrog artifactory搭建Android本地仓库教程_第17张图片
以上就是Android本地仓库搭建的全部内容,如果觉得对你有帮助的话欢迎点赞,收藏,如果哪里写的有问题也欢迎指出一起交流探讨。

你可能感兴趣的:(gradle)