Android Studio中的库项目只有嵌套在项目树中才有效吗?

时间:2013-06-09 21:05:38

标签: android actionbarsherlock android-studio

我正在尝试在Android Studio中构建依赖于ActionbarSherlock的项目。

经过多次阅读后,我最终得到了一个有效的构建,但是只有我将ABS项目嵌入到我的主项目中才会这样:

MainProject
MainProject\ABS (copied here and then used import module)
MainProject\MainModule (the one created by the wizard)

我必须编辑各种Gradle文件,settings.gradle如下:

include ':OnTop'
include ':ActionbarSherlock'

我相应地修复了build.gradle文件中的依赖项。

我认为这不是最理想的。当然,我不想在每个使用它的新项目中复制ABS模块?我应该做什么呢?

2 个答案:

答案 0 :(得分:0)

每一步都在这里:How do I add a library project to Android Studio?

如果您想了解更多有关gradle的信息,请参阅YouTube上的Xavier Ducrohet的Google I / O大会:http://www.youtube.com/watch?v=LCJAgPkpmR0

答案 1 :(得分:0)

我搜索了这个问题,最后这些是我的结果: -

此示例项目

  

- >项目根

     

d:\ asprojects \ thisproject

     

- >模块

     

d:\ asprojects \ thisproject \ MyModule的

     

- >库

     

d:\ asprojects \ LVL

     

d:\ asprojects \在MyLibrary

     

- >罐

     

d:/asprojects/android-support-v4.jar

     

d:/asprojects/GoogleAdMobAdsSdk-6.4.1.jar

- 如果你想使用外部(项目之外)库,那么settings.gradle必须指向它: -

  

settings.gradle

     
include ':lvl', ':MyLibrary', ':MyModule'
project(':MyLibrary').projectDir = new File('D:/asprojects/MyLibrary')
project(':lvl').projectDir = new File('D:/asprojects/lvl')
  

- 然后你需要正确设置MyModule的build.gradle: -

build.gradle

dependencies  
{ 
compile files('D:/asprojects/android-support-v4.jar') 
compile files('D:/asprojects/GoogleAdMobAdsSdk-6.4.1.jar') 
compile project(':lvl') compile project(':MyLibrary')   
}

- 但IDE不会喜欢这些绝对路径,并且会说未找到。

- 从命令行开始的渐变工作很好: -

gradlew clean
gradlew build
gradlew installRelease
etc