私服搭建-Nexus搭建练手

搭建私服的好处:

1、节省带宽资源

2、统一管理第三方包,可以对第三方包的引入做审查,避免项目n多的乱七八糟第三方依赖

3、组件化后,需要将打包的依赖存储在私服,方便维护

 

 

官方下载地址:https://www.sonatype.com/download-oss-sonatype

不同版本的下载地址:https://help.sonatype.com/repomanager3/download/download-archives---repository-manager-3

 

我的私服成果:

bbbd84826237e35b81539284a14b28c6a05.jpg

 

配置文件包含:

ff800cb826e721ea21bf57a6855116a2094.jpg

 

gradle.properties:

//上传构建的信息
GROUP=com.example
VERSION_NAME=1.0.0
POM_ARTIFACT_ID=libtest

//上传的目标仓库地址
SNAPSHOT_REPOSITORY_URL=http://192.168.199.254:8081/repository/maven-snapshots/
RELEASE_REPOSITORY_URL=http://192.168.199.254:8081/repository/maven-releases/

//nexus的私服的用户名和密码
NEXUS_USERNAME=admin
NEXUS_PASSWORD=gabriel

 

upload.gradle:

apply plugin: 'maven'

def isReleaseBuild() {
    return VERSION_NAME.toUpperCase().contains("SNAPSHOT") == false
}
def getRepositoryUsername() {
    return hasProperty('NEXUS_USERNAME') ? NEXUS_USERNAME : ""
}
def getRepositoryPassword() {
    return hasProperty('NEXUS_PASSWORD') ? NEXUS_PASSWORD : ""
}
def getRepositoryUrl() {
    return isReleaseBuild() ? RELEASE_REPOSITORY_URL : SNAPSHOT_REPOSITORY_URL
}
afterEvaluate { project ->
    uploadArchives {
        repositories {
            mavenDeployer {
                pom.groupId = GROUP
                pom.artifactId = POM_ARTIFACT_ID
                pom.version = VERSION_NAME
                repository(url: getRepositoryUrl()) {
                    authentication(userName: getRepositoryUsername(), password: getRepositoryPassword())
                }
            }
        }
    }
    task androidJavadocs(type: Javadoc) {
        source = android.sourceSets.main.java.srcDirs
        classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
    }
    task androidJavadocsJar(type: Jar, dependsOn: androidJavadocs) {
        classifier = 'javadoc'
        from androidJavadocs.destinationDir
    }
    task androidSourcesJar(type: Jar) {
        classifier = 'sources'
        from android.sourceSets.main.java.sourceFiles
    }

    //解决 JavaDoc 中文注释生成失败的问题
    tasks.withType(Javadoc) {
        options.addStringOption('Xdoclint:none', '-quiet')
        options.addStringOption('encoding', 'UTF-8')
        options.addStringOption('charSet', 'UTF-8')
    }
    artifacts {
        archives androidSourcesJar
        archives androidJavadocsJar
    }
}

 

builde.gradle 只需要引用一下就可以

 

apply from: 'upload.gradle'

 

最后找到gralde的task,双击运行,便可以将依赖打包上传到nexus了。

12d119430c368956c6bc697138f713cf3bf.jpg

转载于:https://my.oschina.net/gabriel1215/blog/3028895

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值