美文网首页
Gradle上传Maven私服

Gradle上传Maven私服

作者: 赵泓博 | 来源:发表于2020-04-08 14:27 被阅读0次
  1. 在module中添加maven插件,apply plugin:'maven'
  2. 添加上传任务uploadArchives
uploadArchives {
   repositories.mavenDeployer {
     repository(url:REPO_URL) {// 仓库地址
        // 这里配置上传账户的用户名和密码
       authentication(userName:REPO_USERNAME,password:REPO_PASSWORD)
     }
     pom.version = VERSION_NAME
     pom.groupId = GROUP_ID
     pom.artifactId = MODULE_ID
   }
}
  1. 一并上传源码和注释
task sourcesJar(type:Jar) {
   from android.sourceSets.main.java.srcDirs
   classifier = 'sources'
}
task javadoc(type:Javadoc) {
   failOnError false
   source = android.sourceSets.main.java.sourceFiles
   classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
   classpath += configurations.compile
}
task javadocJar(type:Jar,dependsOn:javadoc) {
   classifier = 'javadoc'
   from javadoc.destinationDir
}
artifacts {
   archives sourcesJar
   archives javadocJar
}
  1. build之后再右侧Gradle面板找到对应module下的uploadArchives任务双击执行

注意,如果maven仓库禁止匿名访问则需要在引用的时候配置如下

repositories {
// other repo...
   maven {
     url REPO_URL
     credentials {
       username REPO_USERNAME
       password REPO_PASSWORD
     }
   }
}

完整实例如下:

apply plugin: 'maven'
apply plugin: 'signing'Properties properties = new Properties();
properties.load(project.rootProject.file('local.properties').newDataInputStream())                                                                                                                         afterEvaluate { project ->
    uploadArchives {
        repositories {
            mavenDeployer {
                repository(url: 'http://nexus.hbc.tech/nexus/content/repositories/android-releases/') {
                    authentication(userName: properties.getProperty('maven.user'), password: properties.getProperty('maven.password'))
                }
                pom.project {
                    version '1.0.0'
                    artifactId 'app-list'
                    groupId 'com.hugboga.list'
                    packaging 'aar'
                    description 'This is app-list library'
                }
            }
        }
    }
    // 进行数字签名
    signing {
        required { gradle.taskGraph.hasTask("uploadArchives") }
        sign configurations.archives
    } task androidJavadocs(type: Javadoc) {
        // 设置源码所在的位置
        source = android.sourceSets.main.java.sourceFiles
    } task androidJavadocsJar(type: Jar) {
        // 指定文档名称
        classifier = 'javadoc'
        from androidJavadocs.destinationDir
    } // 生成sources.jar
    task androidSourcesJar(type: Jar) {
        classifier = 'sources'
        from android.sourceSets.main.java.sourceFiles
    } // 产生相关配置文件的任务
    artifacts {
        archives androidSourcesJar
        archives androidJavadocsJar
    }
}

相关文章

  • Gradle上传Maven私服

    在module中添加maven插件,apply plugin:'maven' 添加上传任务uploadArchiv...

  • 2019-12-11

    gradle 发布jar或者aar到maven私服时pom文件缺少依赖 gradle使用maven publish...

  • maven私服

    使用私服 Maven 自动打包上传到私服 Nexus 自动打包上传私服(nexus3.X版本改了很多) Repos...

  • 分布式组件(做成依赖版)

    我在做分布式组件时需要将写好的文件上传组件上传到maven私服,现在比较常用的maven私服有Artifacto...

  • maven私服搭建及gradle上传

    声明:文章为原创,转载请注明原文地址。http://www.jianshu.com/p/b1fe26d5b8c8文...

  • 【maven】私服jar包引用和上传

    背景:昨天同事让我帮忙往私服里上传jar包,方便大家一起使用,特此研究maven私服相关。 maven私服简介 m...

  • Android 发布到阿里云私服

    参考阿里云私服地址 注册好后查看用户名密码 maven上传脚本 在模块项目的build.gradle下添加appl...

  • Maven如何上传jar包到私服

    本文旨在介绍如何上传jar包到私服,关于如何安装maven、nexus私服请参考官网。 1、Maven简介 Apa...

  • Android Library各个引用渠道总结

    目前引用Library的渠道主要有Maven Central、Jcenter、JitPack、上传到私服Maven...

  • maven学习记录

    Maven+Nexus 私服的搭建 Maven中release和snapshot,release是上传新的版本,...

网友评论

      本文标题:Gradle上传Maven私服

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