Artifactory的搭建与使用简介

Jfrog的Artifactory是一款Maven仓库服务端软件,可以用来在内网搭建maven仓库,供公司内部公共库的上传和发布,以提高公共代码使用的便利性。

1 Artifactory开源版本在Linux下的安装与启动

安装相对比较简单,从Jfrog网站下载当前最新版本的rpm包到本地,当前最新版是4.7.6,执行rpm -ivh命令进行安装。默认安装到/opt/jfrog目录下。

安装包里集成了tomcat,所以不需要再单独安装。但tomcat依赖于java1.8,所以还需要安装jre1.8。这一项就不多说了,去这个页面下载并安装。

成功安装后,切换到安装目录/opt/jfrog/artifactory/bin目录下,执行artifactoryctl start,默认会在8081端口开启服务。这时从浏览器里访问即可。初始用户为admin:password,对于管理员,在安装后需要先修改登录密码。


2 Artifactory的配置

详细的使用文档请见这里

首先介绍下仓库的分类,在Art中,repo有三种。本地Local型,远程Remote型,以及虚拟型。

本地私有仓库:用于内部使用,上传的组件不会向外部进行同步。

远程仓库:用于代理及缓存公共仓库,不能向此类型的仓库上传私有组件。

虚拟仓库:不是真实在存储上的仓库,它用于组织本地仓库和远程仓库。

了解了这点,就可以在admin -> repository 下相应的子类型中,创建新的仓库。


3 仓库的使用

Art安装好之后,预置了一些仓库。例如远程仓库默认配置了jcenter。因此在启动之后,就可以把原来引用公网仓库的组件,改为引用内网仓库了。

如果需要将一些私有代码打包到仓库,就需要使用仓库。创建好内部仓库后,可以将下面的gradle脚本加入到build.gradle中,然后执行uploadArchive的gradle任务,即可将代码编译打包并上传到仓库。

apply plugin: 'maven-publish'
apply plugin: 'maven'

def MAVEN_LOCAL_PATH ='http://192.168.1.2:8081/artifactory/lib-local'
def ARTIFACT_ID = 'fastjson'
def VERSION_NAME = '0.1.0'
def GROUP_ID = 'com.example.groupname'

uploadArchives {
    repositories {
        mavenDeployer {
            repository(url:MAVEN_LOCAL_PATH ){
                authentication(userName: "user", password:"pass")
            }
            pom.project {
                groupId GROUP_ID
                artifactId ARTIFACT_ID
                version VERSION_NAME
                packaging 'aar'
            }
        }
    }
}
相关文章
相关标签/搜索