美文网首页Android OtherAndroid Gradle
如何将Android studio中Library发布到私服Ne

如何将Android studio中Library发布到私服Ne

作者: fengyongge | 来源:发表于2019-02-20 11:00 被阅读0次

搭建

发布Library到私服

1新建文件nexus-push.gradle文件

需要注意的是nexus-push.gradle文件需要和你要上传library的build.gradle文件同一目录级别

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

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.srcDirs
}

artifacts {
    archives androidSourcesJar
    archives androidJavadocsJar
}

uploadArchives {
    repositories {
        mavenDeployer {
            repository(url: "http://nexus.**/repository/maven-releases/") {
                authentication(userName: "", password: "")
            }
            pom.groupId = 'com.zzti.fyg'
            pom.artifactId = 'imagepicker'
            pom.version = '1.1.0'
            pom.project {
                licenses {
                    license {
                        name 'The Apache Software License, Version 2.0'
                        url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
                    }
                }
            }
        }
    }
}

2模块引入nexus-push.gradle文件

在你需要上传的library的build.gradle文件中最后一行引入nexus-push.gradle文件

apply from: './nexus-push.gradle'

3上传aar到nexus私服

在Android Studio右侧gradle的Tasks中会多一个upload任务,点击uploadArchives,上传处理

上传操作.png

坑:首次上传该库的时候找不到metadata,会报下面异常,但是你可以登录到web的nexus服务器上看下,已经上传成功,再次上传就不会遇到该提示。

Could not find metadata ... library/maven-metadata.xml in remote (http://localhost:8081/nexus/content/repositories/thirdparty)

下载使用私服上的Library

在要使用library的项目最外层的build.gradle中配置maven私服地址

allprojects {
    repositories {
        google()
        jcenter()
        maven {
            url 'http://nexus.**/repository/maven-releases/'
            credentials {
                username ''
                password ''
                }
            }
        maven { url "https://jitpack.io" }
    }
}

坑:切记gradle中进行权限配置,否则不能下载成功

问题:Android Studio引入的External Libraries存放在本地什么地方?

有时间我们需要更新新的library版本,由于本地有缓存,点击同步不能下载下来,我们可以找到本地library手动删除,在去同步下载。

Mac系统默认下载到:

/Users/(用户名)/.gradle/caches/modules-2/files-2.1

Windows系统默认下载到:

C:\Users\(用户名)\.gradle\caches\modules-2\files-2.1

相关文章

网友评论

    本文标题:如何将Android studio中Library发布到私服Ne

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