jar 또는 aar를 mvn에 발표하기 (github로 창고),gradle dependency 방식으로 통합

안드로이드 스튜디오를 사용하여 개발한 사용자들은 마븐 원격 창고를 통해jar,aar 파일을 통합하기를 원하지만 이 파일들은 어떻게 발표됩니까?
일반적으로 개발자는jar 파일을sonatype에 발표하여 다른 개발자에게 통합을 제공하지만,sonatype은 반드시 원본을 제공해야 하며, 일부 경우 발표자는 원본을 제공하려고 하지 않기 때문에 본고에서 소개한 방법을 사용할 수 있다.
다음은github에 창고를 만들고jar와aar 파일을 마븐에 발표하는 방법, 통합하는 방법을 설명합니다.
첫 번째 단계:
github에 있습니다.com에 리포를 만들어서 마벤트 창고에 사용합니다.예컨대https://github.com/ione/mvn-repo-ione
2단계:
git clone 명령을 사용하여 파일을 로컬로 clone 합니다.
3단계:
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.deployPathgradle.properties 파일에서 다음을 지정할 수 있습니다.
aar.deployPath=E:\\dev\\workspace\\mvn-repo-ione\\repository

경로는 두 번째 clone repo에서 선택한 디렉터리입니다.
aar 파일을 게시하기 전에 프로젝트 디렉토리에서 명령만 실행하면 됩니다.
gradlew uploadArchives

github를 마벤트 창고로 업로드하는 데 필요한 파일을 생성할 수 있습니다.그리고 두 번째 단계clonerepo가 선택한 디렉터리에 업데이트된 파일을github에 push하면 발표를 완료할 수 있습니다.
2,jar 파일 발표
다음 명령을 사용하여 로컬jar 패키지를 이 디렉토리에 설치합니다.
mvn install:install-file -DgroupId=com.ione -DartifactId=demo -Dversion=1.0 -Dfile=E:\dev\libs\com.ione.demo.jar -Dpackaging=jar -DgeneratePom=true -DlocalRepositoryPath=E:\dev\workspace\ione\mvn-repo-ione\repository -DcreateChecksum=true

패키지 이름 및 경로 주의
위 명령을 실행하면 로컬 디렉토리에 다음과 같은 마벤트 파일이 필요합니다.
mvn-repo-demogit:(master) tree
  .
  ├── LICENSE
  ├── README.md
  └── repository
      └── com
          └── ione
              └── demo
                  ├── 1.0
                  │   ├── demo-1.0.jar
                  │   ├── demo-1.0.jar.md5
                  │   ├── demo-1.0.jar.sha1
                  │   ├── demo-1.0.pom
                  │   ├── deno-1.0.pom.md5
                  │   └── demo-1.0.pom.sha1
                  ├── maven-metadata-local.xml
                  ├── maven-metadata-local.xml.md5
                  └── maven-metadata-local.xml.sha1

  5 directories, 11 files

그리고git push를 통해 생성된maven 파일을github에 push하면 발표를 완성할 수 있습니다.
4단계:
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:1.0'
  }

통합이 가능합니다.

좋은 웹페이지 즐겨찾기