首页 > 代码库 > 将jar或者aar发布到到mvn 中(用github作为仓库), 通过gradle dependency 方式集成

将jar或者aar发布到到mvn 中(用github作为仓库), 通过gradle dependency 方式集成

使用Android Studio开发的用户,都希望通过maven远程仓库的方式来集成jar、aar文件,但是这些文件时如何发布的呢?

通常开发者都会将jar文件发布到sonatype上,以提供给其他开发者集成,但是sonatype要求必须提供源码,而有些情况下,发布者并不想提供源码,这样可以使用本文介绍的方法。

 下面就为大家讲解如何在github上创建仓库,将jar和aar文件发布到maven中,以及如何集成。


第一步:

       github.com 上创建一个repo,专门用作maven仓库使用。 例如https://github.com/ione/mvn-repo-ione

第二步:

      使用git clone 命令将文件clone到本地。

第三步:

       1、发布aar文件

        在工程目录的build.gradle文件中添加:

apply plugin: 'maven'

android{
    // ...
}

// ext is a gradle closure allowing the declaration of global properties
ext {
    PUBLISH_GROUP_ID = 'com.ione'
    PUBLISH_ARTIFACT_ID = 'demo'
    PUBLISH_VERSION = android.defaultConfig.versionName
}

uploadArchives {
    repositories.mavenDeployer {
        def deployPath = file(getProperty('aar.deployPath'))
        repository(url: "file://${deployPath.absolutePath}")
        pom.project {
            groupId project.PUBLISH_GROUP_ID
            artifactId project.PUBLISH_ARTIFACT_ID
            version project.PUBLISH_VERSION
        }
    }
}

其中aar.deployPath 可在gradle.properties 文件中指定:

aar.deployPath=E:\\dev\\workspace\\mvn-repo-ione\\repository

路径为第二步clone repo选择的目录。

发布aar文件前,只需要在工程目录下执行命令:

gradlew uploadArchives

即可生成上传至以github作为maven仓库的所需文件。然后把在第二步clonerepo选择的目录中更新的文件push到github上,即可完成发布。

  2、发布jar文件

通过以下命令将本地的jar包安装到此目录下:

mvn install:install-file -DgroupId=com.ione -DartifactId=demo -Dversion=1.4.1 -Dfile=E:\dev\libs\com.ione.demo.jar -Dpackaging=jar -DgeneratePom=true -DlocalRepositoryPath=E:\dev\workspace\ione\mvn-repo-ione\repository -DcreateChecksum=true

注意包名和路径

运行上述命令后在本地目录下就有了需要的maven文件, 例如:

mvn-repo-demogit:(master) tree
  .
  ├── LICENSE
  ├── README.md
  └── repository
      └── com
          └── ione
              └── demo
                  ├── 1.4.1
                  │   ├── demo-1.4.1.jar
                  │   ├── demo-1.4.1.jar.md5
                  │   ├── demo-1.4.1.jar.sha1
                  │   ├── demo-1.4.1.pom
                  │   ├── deno-1.4.1.pom.md5
                  │   └── demo-1.4.1.pom.sha1
                  ├── maven-metadata-local.xml
                  ├── maven-metadata-local.xml.md5
                  └── maven-metadata-local.xml.sha1

  5 directories, 11 files


然后通过git push 将生成的maven 文件push 到github 上去,即可完成发布。

第四步:

在Android Studio中集成jar文件或者aar文件

在工程的build.grade 文件中添加:

repositories {
          jcenter()
          maven { url "https://raw.githubusercontent.com/ione/mvn-repo-ione/master/repository" }
  }

dependencies {
      compile 'com.ione.demo'
  }



即可完成集成。







将jar或者aar发布到到mvn 中(用github作为仓库), 通过gradle dependency 方式集成