搭建Maven私有仓库

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/likuan0214/article/details/79164506

1.Nexus官网
2.下载All platforms - Nexus Repository Manager OSS 2.x - bundle.zip
3.解压
这里写图片描述
4.运行
打开终端,转移到nexus2/bin目录下
运行:./nexus start

bogon:bin lisen$ pwd
/Users/lisen/Desktop/n2/nexus2/bin
bogon:bin lisen$ ./nexus
Usage: ./nexus { console | start | stop | restart | status | dump }
bogon:bin lisen$ ./nexus start
Starting Nexus OSS...
Started Nexus OSS.

5.访问http://127.0.0.1:8081/nexus/#welcome
这里写图片描述

默认账号:admin
默认密码:admin123

6.登陆成功后
点击Security => Users
这里写图片描述

7.重置密码
admin一行右键点击,选择重置/设置密码
这里写图片描述

这里有一点要注意,admin帐号权限最大,后期上传如果在AndroidStudio中写admin帐号风险比较大,所以一般会选择deployment帐号来上传。

8.然后选择Views/Repositories
这里写图片描述
点击Add
9.设置maven2代理
选择Proxy Repository
这里写图片描述

这里用aliyun提供的maven仓库镜像
http://maven.aliyun.com/nexus/content/groups/public/

10.设置私有仓库
选择Hosted Repository,假设创建的是test
这里写图片描述

11.点击Public Repositories,将没用的移动到右侧,自己创建的两个仓库移到左侧
这里写图片描述
以上步骤就完成了Maven仓库的搭建

接下来是AndroidStudio上传的设置

1.首先在gradle.properties文件中添加了一个maven私有仓库的配置项

usePrivateMaven=false
mavenHost=http://192.168.2.124:8081/nexus/content/repositories/test/
deployName=xxxx
deployPsw=xxxx

2.然后在project的gradle下

apply from: "config.gradle"
buildscript {
    repositories {
        google()
        if(usePrivateMaven){
            maven{url 'http://192.168.2.124:8081/nexus/content/groups/public/'}
        }else{
            jcenter()
        }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'
    }
}

allprojects {
    repositories {
        google()
        if(usePrivateMaven){
            maven{url 'http://192.168.2.124:8081/nexus/content/groups/public/'}
        }else{
            jcenter()
        }
    }
}

3.配置要上传的library,在对应的module的gradle下

apply plugin: 'com.android.library'

apply plugin: 'maven'
def libVerName = '1.0'
def libVerCode = 1
def artifactid = 'test'
def groupid = 'a.b'
uploadArchives {
    configuration = configurations.archives
    repositories {
        mavenDeployer {
            // 私有仓库的地址,以及账户
            repository(url: "${mavenHost}") {
                authentication(userName: "${deployName}", password: "${deployPsw}")
            }
            // Library的配置
            pom.project {
                version libVerName
                artifactId artifactid
                groupId groupid
                packaging 'aar'
                description 'test'
            }
        }
    }
}


dependencies {
    provided fileTree(include: '*.jar', dir: 'libs')
}

android {
    。。。。
    defaultConfig {
        。。。。
        versionCode libVerCode
        versionName libVerName
    }

    lintOptions {
        abortOnError false
    }
    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            res.srcDirs = ['res']
            jniLibs.srcDirs = ['libs']
        }
    }
}

4.然后运行uploadArchives

这里写图片描述

5.上传成功后,会在http://127.0.0.1:8081/nexus/content/repositories/test/ 目录下看到上传的library

6.AndroidStudio使用

compile 'a.b:test:1.0'

猜你喜欢

转载自blog.csdn.net/likuan0214/article/details/79164506