如何在Android Studio项目中包含库模块依赖项?

如何在Android Studio项目中包含库模块依赖项?,android,android-studio,gradle,android-gradle-plugin,build.gradle,Android,Android Studio,Gradle,Android Gradle Plugin,Build.gradle,我正在将一个项目从Eclipse迁移到AndroidStudio。我有一个项目在这个项目中用作库。这个库称为PullToRefresh 我尝试了很多方法将这个项目导入AS,但我尝试的任何方法都有效 在我的项目中,我有以下文件夹结构: Project Root +-- app | +-- builds | +-- libs | | +-- PullToRefresh (my lib project) | +-- src | | +-- main (java code a

我正在将一个项目从Eclipse迁移到AndroidStudio。我有一个项目在这个项目中用作库。这个库称为PullToRefresh

我尝试了很多方法将这个项目导入AS,但我尝试的任何方法都有效

在我的项目中,我有以下文件夹结构:

Project Root
+-- app
|   +-- builds
|   +-- libs
|   |   +-- PullToRefresh (my lib project)
|   +-- src
|   |   +-- main (java code and resources)
在build.gradle中,我尝试过这样做:

dependencies {
    compile project(":libs:PullToRefresh")
}
但我收到了这个错误信息:

Gradle 'my_project' project refresh failed: Project with path ':libs:PullToRefresh'
could not be found in project ':app'

Android Studio使用项目模块概念,所有模块都应该位于根目录(项目目录)内。一个模块可以依赖于其他模块。您的库被视为同一项目下的不同模块,您的主模块(您的应用程序)依赖于它们

稍微改变一下项目结构:

Project Root
+-- libs
    +-- PullToRefresh (my lib project)
+-- app
|   +-- builds
|   +-- src
|   |   +-- main (java code and resources)
    +-- .....
+--settings.gradle
将此行包括在
设置中。渐变

include ':libs:PullToRefresh'
你的身材看起来不错。我建议您将目录名从libs更改为library,因为对jar依赖项使用libs,而不是对模块依赖项使用libs

并将其保存在主模块的build.gradle文件中:

dependencies {
    compile project(":libs:PullToRefresh")
}

从“帮助”菜单选项中搜索“导入模块”,然后将出现一个向导

Settings.gradle应该是更高级别的目录,直接位于项目根目录下。虽然它能起作用,但对我来说有点神秘。@ScottBarta ya:)我觉得我画画不好。实际上,它看起来像是在Android studio中这样做的,所以我再次检查了它的错误。我和你发帖后说的感觉一样。如果有误导性的话,让我纠正一下。@ScottBarta真的!在我的例子中,settings.gradle是一个更高的级别。我认为pyus13弄错了。它可以工作,但现在“libs”也被视为一个模块,它出现在Android Studio中。你知道怎么忽略它吗?这对我来说很有效,但由于这个动作,我找不到gradle配置。