美文网首页
Android 大神jessyan的bintray配置

Android 大神jessyan的bintray配置

作者: Alex富贵 | 来源:发表于2020-07-19 13:29 被阅读0次

    记录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)文章食用

    相关文章

      网友评论

          本文标题:Android 大神jessyan的bintray配置

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