2016-08-22 514 views
1

我有一個Android項目分爲兩個模塊:app(主應用程序)和mylibrary。我有一個myaarfile.aar文件,我想添加到磁帶庫中。我在MacOSX上工作(不確定這很重要)。Gradle flatDir模塊路徑

在在MyLibrary gradle文件我已經指定:

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

,並在全球gradle這個文件我已經把這個:

allprojects { 
    repositories { 
     jcenter() 
     flatDir { 
      dirs 'file:/Users/myuser/myproject/mylibrary/libs' 
     } 
    } 
} 

,它工作正常。但是這條道路存在一個明顯的問題,我希望將其普及化。但是,將其更改爲:

dirs '${rootDir}/libs' 

沒有工作,原因是gradle這個尋找的AAR:

文件:/用戶/ myuser的/ myproject的/在MyLibrary/$ {} ROOTDIR /庫/ myaarfile.aar

改變路徑:

dirs '/libs' 

沒有任何工作,事業gradle這個一直在尋找AAR在:

文件:/libs/myaarfile.aar

我應該如何指定路徑,以便將gradle這個搜索在正確的文件夾中的AAR?不幸的是,我不能使用其他方法添加aar。

編輯:

找到了!

flatDir { 
    dirs "${project(':mylibrary').projectDir}/libs" 
} 

回答

1

找到了!

flatDir { 
    dirs "${project(':mylibrary').projectDir}/libs" 
} 
0
+0

這工作,但只有當我把aar放入主模塊(app/libs文件夾)。如果它在mylibrary/libs中,我必須使用'EDIT'中的路徑。 – user5981074

+0

嘿!如果解決了這個問題,請將您的編輯答案放在下面的真實答案中。回答你自己的問題並沒有問題,你只需要等待幾天,直到你可以正式將其標記爲答案。 –