美文网首页
【简单】【图文并茂】Nexus搭建公司私人Maven仓库及Gra

【简单】【图文并茂】Nexus搭建公司私人Maven仓库及Gra

作者: SLTPAYA | 来源:发表于2017-05-17 14:55 被阅读0次

开始准备

  • 首先进入https://www.sonatype.com/download-oss-sonatype
    下载列表
  • 下载相对应的下载包
  • 解压后执行bin目录下的nexus.bat(windows)/nexus(linux)


    执行相应的安装包
  • 首先安装Nexus,以系统管理员身份运行命令提示符 / Linux直接./nexus start
    nexus install
    nexus start
    nexus stop
开启和停止Nexus

配置Nexus

  • 进入本地地址http://localhost:8081

  • 点击右上角的Login In 进行登录

    username:admin
    password:admin123
    
添加仓库

  • 添加仓库repository(仓库repository分为两种版本的仓库,一种是snapshot,一种是release. snapshot表示该仓库中的包将会经常更新,而且不完善。maven的依赖管理是基于版本管理,发布后如果版本号相同,当我们在依赖的时候,尽管本地版本久,maven也不会主动下载的,但是snapshot可以让依赖者也会同时下载最新的snapshot版本.而release版本仓库中的依赖包要更新了,依赖者必须依赖指定该包新的版本号,才会下载最新的依赖库)

  • 点击上方的Add-->选择添加一个Hosted Repository

    • 填写仓库ID
    • 填写仓库名
    • 选择仓库类型release/snapshot
    • 选择是否允许部署
    创建仓库
    为仓库配置相应的权限和账号

  • 为仓库配置相应的权限和账号

    • 进入左方的Security-->Privileges-->add-->指定该权限策略所适用的仓库

      • 第一个为该权限策略的名称
      • 第二个为相应的描述
      • 第三个选择该策略作用的仓库
      • 第四个选择Target(选择Maven2)
Privileges
  • Security-->Roles-->Add添加一个角色(表示该角色拥有的权限)

    • 首先输入角色ID
    • 角色名
    • 该角色的描述
    • 点击Add添加
    • 在上方Filter中筛选出刚才我们指定的权限策略的名
    • 勾选则代表具备相应的权限
添加Role
  • Security-->User-->Add (添加一个具体的用户)

    • 填写用户ID
    • 填写用户名
    • 填写电子邮件
    • 设置账号状态为激活Active
    • 设置密码
    • 为用户选择一个Role
    • 在上方的Filter筛选出刚才建立的Role名
    • 点击OK,即可创建相应的权限用户
添加用户

在Gradle中生成aar包并上传到自己的仓库中去

  • 首先保证项目为Library(库)

  • 在主项目中build.gradle同级文件夹中建立一个文件,例如为push.gradle

  • 添加代码

      apply plugin: 'maven'
    
      afterEvaluate { project ->
          uploadArchives {
          repositories.mavenDeployer {
              //添加仓库的url地址,指定用户名和密码
              repository (url: "仓库URL地址") {
                  authentication(userName: "用户名", password: "密码")
              }
              //如果要发布到snapshot仓库中,必须在后面加-SNAPSHOT,否则发布失败
              pom.version = "1.2-SNAPSHOT"
              //artifactId,可以写项目名
              pom.artifactId = "hello"
              //groupId可以为包名,可以为其他的
              pom.groupId = "com.sltpaya.xxx"
              //包的类型
              pom.packaging = 'aar'
          }
         }
    }
    
  • 在moudle中的build.gradle中顶部添加
    apply from: '../push.gradle'

  • android studio右边的gradle task中找到uploadArchives task,并且执行

执行上传操作
  • 上传成功后就可以在仓库地址中找到相应的项目了
在浏览器中可以访问查看到

依赖maven仓库的aar包

  • 新建项目,在项目目录下的build.gradle中allProjects中配置maven库的地址为你的仓库地址
  allprojects {
      repositories {
              jcenter()
               maven {url "你的仓库地址"}
      }
}
  • 在moule中添加依赖
    compile 'groupId:artifactId:版本号
    例如:compile 'com.sltpaya.xxx:hello:1.1.0'
    SNAPSHOT版本的要在版本号后加-SNAPSHOT,例如1.1.0-SNAPSHOT
    compile 'com.sltpaya.xxx:hello:1.1.0-SNAPSHOT'

相关文章

网友评论

      本文标题:【简单】【图文并茂】Nexus搭建公司私人Maven仓库及Gra

      本文链接:https://www.haomeiwen.com/subject/jiddxxtx.html