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

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


当前回答

我找到了解决方案。很简单。遵循froger_mcs说明。

确保在ProjectStructure->Modules(Sources)中将src文件夹设置为Source文件夹。

其他回答

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

我也遇到了同样的问题,然后我做了以下事情。

我使用菜单文件->导入模块菜单将库项目作为模块导入到AndroidStudio IDE中然后我转到主模块,在该模块中,我希望库项目作为从属项目右键单击主模块(在我的情况下,它的名称是app)->打开模块设置->进入依赖项选项卡->单击+按钮(您将在窗口右侧看到它)->单击模块依赖项->从列表中选择库项目

应用更改并单击“确定”按钮。

它对我有用。我希望它也能帮助其他人。

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

例如,给定以下结构:

我的项目/

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

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

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

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

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

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

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

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

Android Studio 3.0

只需将库名称添加到应用程序build.gradle文件的依赖项块中。

dependencies {
    // ...
    implementation 'com.example:some-library:1.0.0'
}

请注意,您应该使用实现而不是现在编译。这是Android Studio 3.0的新功能。有关差异的解释,请参阅本问答。