Android 大神jessyan的bintray配置

记录bintray.gradle文件

自己添加了一点注释,方便以后使用

apply plugin: 'com.jfrog.bintray'
apply plugin: 'com.github.dcendents.android-maven'

Properties properties = new Properties()
boolean isHasFile = false
if (project.rootProject.findProject('local.properties') != null) {
    isHasFile = true
    properties.load(project.rootProject.file('local.properties').newDataInputStream())//读取local.properties文件
}

def gitUrl = 'https://github.com/xxxxx/xxx.git'   // Git仓库的url
def siteUrl = 'https://github.com/xxxxx/xxx'   // 项目的主页

//使用的gradle依赖包由 X:Y:Z的格式组成  group是X  library的名称是Y 版本号是X
version = "1.0.0"//版本号
group = "xx.xxx"//我这里叫com.alex


bintray {
    user = isHasFile ? properties.getProperty("bintray.user") : System.getenv("bintray_user")//如果local.properties文件存在则读取文件中bintray.user数据,不存在则读取java环境变量中自定义的bintray_user
    key = isHasFile ? properties.getProperty("bintray.apikey") : System.getenv("bintray_apikey")//如果local.properties文件存在则读取文件中bintray.apikey数据,不存在则读取java环境变量中自定义的bintray_user

    pkg {
        repo = 'maven'
        name = POM_NAME
        licenses = ["Apache-2.0"]
        websiteUrl = siteUrl
        vcsUrl = gitUrl
        publish = true // 是否是公开项目。

        version {
            name = rootProject.ext.android["versionName"]
            desc = 'A common Architecture for Android Applications developing based on MVP,integrates many Open Source Projects( like Dagger2,RxJava,Retrofit... ),to make your developing quicker and easier.'
            released = new Date()
            vcsTag = 'v' + rootProject.ext.android["versionName"]
            attributes = ['gradle-plugin': 'com.use.less:com.use.less.gradle:gradle-useless-plugin']
        }
    }
    configurations = ['archives']
}


install {
    repositories.mavenInstaller {
        // This generates POM.xml with proper parameters
        pom {
            project {
                packaging 'aar'
                // Add your description here
                name POM_NAME
                description 'A common Architecture for Android Applications developing based on MVP,integrates many Open Source Projects( like Dagger2,RxJava,Retrofit... ),to make your developing quicker and easier.'
                url siteUrl
                // Set your license
                licenses {
                    license {
                        name 'The Apache Software License, Version 2.0'
                        url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
                    }
                }
                developers {
                    developer {
                        id 'JessYanCoding'        //填写bintray或者github的用户名
                        name 'jessyan'         //姓名,可以是中文
                        email 'jess.yan.effort@gmail.com'
                    }
                }
                scm {
                    connection gitUrl
                    developerConnection gitUrl
                    url siteUrl
                }
            }
        }
    }
}

task sourcesJar(type: Jar) {
    from android.sourceSets.main.java.srcDirs
    classifier = 'sources'
}
task javadoc(type: Javadoc) {
    failOnError false
    source = android.sourceSets.main.java.srcDirs
    classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
}
task javadocJar(type: Jar, dependsOn: javadoc) {
    classifier = 'javadoc'
    from javadoc.destinationDir
}
artifacts {
    archives javadocJar
    archives sourcesJar
}

在需要上传的module的build.gradle尾行中添加

apply from: '../bintray.gradle'
或
apply from: 'bintray.gradle'

在项目的build.gradle文件中添加插件

dependencies {
        ........
        //Gradle Android Maven plugin
        classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1'
        //Gradle Bintray Plugin
        classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.8.4'
    }

配合[Android]如何上传一个库到JCenter(远程依赖Android Library)文章食用

© 著作权归作者所有
这个作品真棒,我要支持一下!
大话安卓群友文章分享,包含一些技术讨论、新框架介绍
0条评论
top Created with Sketch.