首页 热点资讯 义务教育 高等教育 出国留学 考研考公
您的当前位置:首页正文

将Library制成jar/aar,上传至maven

2024-12-20 来源:化拓教育网

理解Maven

Maven在Android的角色

android中引用包的方式分为两种:

1>本地 lib 引用

repositories {

      flatDir {

             dirs 'libs'

        }

}

dependencies {

// 前面是项目名,记住不带arr后缀,后面是后缀

compile(name: 'mylibrary', ext: 'aar')

//引用一个library

compile project(':qqEmoji-lib')

//引用jar

compile files('libs/libammsdk.jar')

}

2>Maven 引用

buildscript {

     repositories {

         //mavenCentral托管

         maven{

         }

      }

      dependencies {

            //gradle 版本

             classpath 'com.android.tools.build:gradle:1.0.1'

        }

}

dependencies {

compile fileTree(dir: 'libs', include: ['*.jar'])

//maven引用包

compile 'com.android.support:appcompat-v7:25.3.1'

}

library制成jar/aar上传至Maven

1.寻找一个library,打开其下的gralde文件进行编辑

2.编辑gradle文件

dependencies()后追加以下操作:

task claen(type: Delete) {

delete rootProject.buildDir

}

uploadArchives {

     repositories {

          mavenDeployer {

              repository(url: "file:/E:/maven") {   //此处可以为本地路径,也可为域名url

               }

               pom.project {

                     groupId 'com.licrafter.android'

                     artifactId 'licralibrary'

                      version '1.0.0'

                       packaging 'aar'

                }

           }

      }

}

task androidJavadocs(type: Javadoc){

         options {

              windowTitle = 'licralibrary 1.0.0-SNPHOST doc'

               docTitle = 'licralibrary 1.0.0-SNPHOST doc'

                failOnError = false encoding = 'utf-8'

                 charSet = 'utf-8'

         }

source = android.sourceSets.main.java.srcDirs

}

task androidJavaDocsJar(type: Jar, dependsOn: androidJavadocs) {

      classifier = 'javadoc'

      from androidJavadocs.destinationDir

}

task androidSourceJar(type: Jar) {

         classifier = 'sources'

         from android.sourceSets.main.java.srcDirs

}

artifacts {

       archives androidJavaDocsJar

       archives androidSourceJar

}

tasks.withType(JavaCompile) {

          options.encoding = 'UTF-8'

}

tasks.withType(Javadoc) {

           options.encoding = 'UTF-8'

}

执行命令

gradle clean uploadArchives

执行命令将arr/jar上传至Maven

如何引用

添加将Maven路径

在此gradle文件中allprojects()方法下编写:

引用

在主项目上引用包

至此我们完成了将library制成jar/arr,上传至了Maven并且完成了maven的引用

显示全文