创建aar包并且上传到maven私服

maven私服的搭建在这里先不介绍

1.引入jfrog插件

工程gradle中的buildscript下dependencied引入classpath "org.jfrog.buildinfo:build-info-extractor-gradle:3.1.1";

 buildscript {
        repositories {
            jcenter()
            google()
        }
  dependencies {
        classpath 'com.android.tools.build:gradle:3.1.0'
        classpath "org.jfrog.buildinfo:build-info-extractor-gradle:3.1.1"
  }}

2.项目gradle中配置项目参数

注意!建议这一步写在单独的jfrog.gradle文件中。如果已经有jfrog.gradle 文件,直接跳转第3步!!!

jfrog.gradle文件

    apply plugin: 'com.jfrog.artifactory'
    apply plugin: 'maven-publish'
    repositories {
        jcenter()
        maven { url 'https://oss.jfrog.org/libs-snapshot' }
    }
    def packageName = 'your packageName'
    def artifactName = 'your artifactName'
    def libraryVersion = 'x.x.x'
    publishing {
        publications {
            aar(MavenPublication) {
                groupId packageName
                artifactId artifactName
                version = libraryVersion
                artifact("$buildDir/outputs/aar/${project.getName()}-release.aar")
            }
        }
    }
    artifactory {
        contextUrl = 'http://your ip:your port/artifactory'
        publish {
            repository {
                repoKey = libraryVersion.endsWith('SNAPSHOT') ? 'libs-snapshot-local' : 'libs-release-local'
                username = "your username"
                password = "your password"
            }
            defaults {
                publications('aar')
                publishArtifacts = true
                properties = ['qa.level': 'basic', 'dev.team': 'core']
                publishPom = true
            }
         }
    }

3.生成aar包

执行如下命令,output中会生成aar文件

    gradle clean build

4.生成pom文件

在task列表中找到并执行如下命令,生成pom文件

    Tasks - publishing - generatePomFileForAarPublication

pom文件生成位置:build-publications-aar文件夹
注意:pom文件中可能不会自动写入依赖,可能导致无法使用,如果无法使用,需要手动在pom中写入依赖

5.上传私服

在task列表中找到并执行如下命令,上传aar和pom文件到maven私服

    Tasks - publishing - artifactoryPublish

6.升级

每次更新aar只需要改动jfrog.gradle文件中的libraryVersion即可。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 说明 本文主要介绍和Gradle关系密切、相对不容易理解的配置,偏重概念介绍。部分内容是Android特有的(例如...
    jzj1993阅读 15,794评论 1 62
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,115评论 19 139
  • 2017年的春节是我过得最舒服也最漫长的一个。因为脚伤,整整35天,衣来伸手,饭来张口,连门也很少出。 我老家在小...
    冰贰阅读 835评论 3 1
  • 很久不写东西了,手机虽然用习惯了,但总觉得要用来整理零落的文字有些困难,也害怕自己把悲悲戚戚的字串成文时只会滋生更...
    木木_d62d阅读 235评论 0 1
  • 总有一些种莫名的颜色,在闭着眼的太阳下,在关了灯的黑夜里;被看见。总有一些种莫名的声音,在花开都悄然无声的凌晨四点...
    晓梦echo阅读 951评论 0 3