全部产品
云市场

将已有私库迁移至云效私库

更新时间:2019-08-22 10:33:23

本文档帮助您将已有Maven私库中的制品包批量迁移到云效的Maven私库中。

本地制品迁移

您可以在云效私有仓库管理界面,获取到详细的本地仓库迁移操作说明,如下图所示: 本地制品批量迁移

操作步骤:

1.下载迁移工具migrate-local-repo-tool.jar

2.在您本地运行该迁移工具,(请首先确保您的JDK版本为1.8及以上)。运行命令如下:

java 
-jar migrate-local-repo-tool.jar 
-cd "/$HOME/.m2/repository/" 
-t "http://10.21.11.11/repository/releases/" 
-u admin 
-p admin123 

参数注解:

-cd 您要迁移的本地目录,例如:/$HOME/.m2/repository/

-t 目标仓库地址(您可以在【私有仓库】界面点击仓库地址,获取您的目标仓库地址)

-u 用户名

-p 密码

注:用户名和密码为您要上传的目标仓库用户名及密码,您可在setting.xml中获取对应仓库的username和password

根据您的实际需求指定合适的参数,然后执行该命令,稍等片刻,您的本地仓库中的a制品将会被批量迁移到云效中您所指定的Maven私库中。

如果迁移的本地目录中文件目录过多或者目录层级过深,可能会导致迁移命令卡死或者返回异常。推荐做法是只迁移你自己的私有制品到私有仓库中,构建时拉取公共制品包可以使用我们提供的公共代理库。比如假设你的私有制品都放置在/$HOME/.m2/repository/com/alibaba/**目录中,你可以将com/alibaba/**/目录复制一份到一个空的目录中,比如复制到/tmp/repo/中中,然后运行迁移命令时将-cd命令参数指定为/tmp/repo/,这样迁移工具只会迁移你的私有制品。

添加现有的私库作为云效私库的远程仓库

云效提供了关联其他仓库为远程仓库的功能。这样云效私库既具备上传下载包的能力,又具备代理其他仓库的能力。当使用云效私库下载包时,它也会尝试从远程仓库拉取包,并且缓存在云效私库。

设置远程仓库

远程仓库地址为您想要代理的私库地址,这个地址必须是公网可以访问的。如果该私库可以匿名访问,那么无需配置访问账号和密码。点击关联仓库可以保存配置。您随后可以修改配置或者解除关联。注意只有已经缓存在云效私库的制品包才能被搜索到。注意:如果远程仓库的网络环境不佳会导致拖慢云效私库的下载速度。