簡體   English   中英

從gradle中的github導入存儲庫

[英]Import repository from github in gradle

我正在構建一個依賴於本機的android庫:

dependencies {
    compile 'com.google.maps.android:android-maps-utils:0.5'
}

事實證明, android-maps-utils無法按照我想要的方式工作,因此我對其進行了分叉,我想使用該庫的版本而不是官方版本。 我找不到方法,但我搜索了如何從gradle內的github導入庫,卻找到了ajoberstar / gradle-git,但是沒有明確的說明,但我發現的所有示例都沒有為我工作(例如: Gradle:如何在任務中克隆git repo? )。 有沒有更簡單的方法來完成這樣的事情?

編輯:

這是我的結構(簡化):

root:
| build.gradle
| settings.gradle
| aars
 | map-util.aar
| libs
 | android
  | build.gradle

根build.gradle-> repositories { flatDir { dirs 'aars' } }

settings.gradle->

include ":react-native-maps-lib"
project(":react-native-maps-lib").projectDir = file("./lib/android")

android / build.grandle-> compile(name: "map-util", ext:"aar")

通過在本地文件系統上的某個位置構建分支源來引用您構建的AAR。

repositories {
   flatDir {
       dirs 'libs'
   }
}

然后將工件放入.../libs ,並將其正常添加到您的依賴項中,當然會將版本與您剛剛構建的版本相匹配。

我發現了問題所在! 首先讓我弄清楚我想做什么-我正在構建React Native項目。 它使用了我的react-native-maps的分支版本,該版本使用了android-maps-utils。 我想分叉android-maps-utils並使用我的分叉版本。

android-maps-utils生成我需要在本地導入的aar文件。 遵循Jeffrey Blattman的建議,我在react-native-maps中添加了libs目錄,並在其中放置了一個名為android-maps-utils.aar的文件。 我還將此添加到react-native-maps build.gradle中:

allprojects {
  repositories {
    ...
    flatDir {
      dirs "$rootDir/libs"
    }
  }
}

這是react-native-maps / android / build.gradle里面的:

dependencies {
  ...
  compile(name: "android-maps-utils", ext:"aar")
}

現在react-native-maps可以編譯,但是我的react-native項目不是由於以下原因:

A problem occurred evaluating project ':react-native-maps'.

因此,我還需要包括以下行:

compile(name: "android-maps-utils", ext:"aar")

在我的本機應用程序android目錄中。 現在一切都可以編譯了!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM