如何将库项目(如Sherlock ABS)添加到Android Studio?

(不适用于旧的基于ADT Eclipse的捆绑包,而是适用于新的Android Studio。)


当前回答

您可以使用Gradle依赖项配置[关于]将一些依赖项添加到项目中

<模块名>/build.gradle

dependencies {
  //<gradle_dependency_configuration> '<dependency_name>:<dependency_version>'
  //e.g.
  implementation 'com.android.support:appcompat-v7:1.1.1'
}

其他回答

通过GUI编辑库依赖项是不可取的,因为它不会将这些更改写入build.gradle文件。因此,您的项目不会从命令行构建。我们应该直接编辑build.gradle文件,如下所示。

例如,给定以下结构:

我的项目/

应用程序/图书馆/库1/lib2语言/

我们可以确定三个项目。Gradle将使用以下名称引用它们:

:应用程序:库:lib1:库:lib2

:app项目可能依赖于库,这是通过声明以下依赖项来实现的:

dependencies {
    compile project(':libraries:lib1')
}

如果您有AndroidStudio0.4.0,您可以在构建路径YourApp/libraries中创建一个新文件夹。复制JAR文件。在那里,右键单击它并“添加为库”。现在您有一个弹出窗口。只需选择目录并按OK,就可以了。

这是我在Android Studio 1.5中的工作方式+

在要添加外部库项目的项目中,转到菜单“文件”->“新建”->“导入新模块”**,导航到要添加到项目中的库项目,选择在项目中添加“库”模块。您将在项目中获得settings.gradle,除了应用程序外,还包括库,类似于:

include ':app', ':library'

在依赖项部分中添加build.gradle(模块:app):

编译项目(“:库”)

重建项目,就这样。

*您可以添加任意数量的库(模块)。在这种情况下,在settings.gradle中,您将具有:

 include ':app', ':lib1', ':lib2', ...

在build.gradle中,您需要:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])

    // Some other dependencies...

    compile project(':lib1')
    compile project(':lib2')
    ...
}

按F4显示项目结构,单击库或全局库,然后单击+添加JAR文件。单击Modules what you want add jar,选择Dependencies选项卡,单击+,然后添加Library。

要解决此问题,只需将abs资源路径添加到项目构建文件中,如下所示:

sourceSets {
    main {
        res.srcDirs = ['src/main/res','../../ActionBarSherlock/actionbarsherlock/res']
    }
}

所以,我再次编译,没有任何错误。