首先,我意识到这个问题的存在-- How do I add a library project to Android Studio? --不幸的是,它对我没有帮助。
我的目标很简单。我想使用Android Studio IDE (0.2.11)和我代码中的Guava libraries编写一个安卓应用程序。
我不知道Gradle,我才刚开始使用Android Studio,我的Visual Studio/C#背景让我变得笨拙,我为此道歉(在那个米老鼠的世界里,你通常只需要添加一个库引用就可以了)。
我会用截图记录我的步骤。我基本上遵循了this answer给出的建议。
我在我的项目文件夹下创建了一个libraries
文件夹。
我把Guava仓库克隆进去了。
文件已成功显示。
我访问了Project Structure
并选择了Import Module
。
我选择了Create module from existing sources
,并同意所有默认选项。
我将我的settings.gradle
文件更新为include ':libraries:guava', ':Test'
和我的compile project(":libraries:guava")
的build.gradle
文件
但每当我试图重建这个项目时,我得到的都是:
Error: Gradle: A problem occurred configuring project ':Test'.
> Failed to notify project evaluation listener.
> Configuration with name 'default' not found.
我确实尝试过在guava
文件夹中放入如下所示的build.gradle
:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
}
}
apply plugin: 'android-library'
dependencies {
compile 'com.android.support:support-v4:13.0.+'
}
android {
compileSdkVersion 17
buildToolsVersion "17.0.0"
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
}
}
(正如aforementioned answer所说)。
我上上下下搜索了一下,找到了芭乐的“正确”build.gradle
。
https://code.google.com/p/guava-libraries/wiki/UseGuavaInYourBuild -也没有帮到我。
我确实尝试了无数的事情,我不会在这里描述它们,因为它们是相当随意的-我尝试添加模块依赖,我尝试在Gradle settings
中打开Use auto-import
,等等。
我知道这不是一种解决问题的方法,我保证我会勤奋地阅读Gradle的User Guide,从1到5.4.2到7.3,但我不敢相信这真的是实现像向项目添加一个库这样平淡无奇的事情的先决条件吗?为什么没有默认的build.gradle
文件,如果需要的话,可以从这个文件开始处理各种事情?
和真正的问题-如何创建一个应用程序(在Android Studio中)构建,实际运行在安卓设备上,最重要的是,我可以使用Guava,这样我就可以按值对地图进行排序,而无需编写50行代码?:)
很抱歉我的问题语气太夸张了,我知道这里的套路,这只是我发泄沮丧的方式。
从解决类似问题的问题和答案中投出了多少票来判断,我确信我不是唯一一个从更多说明中受益的人。我会立马悬赏的,但规则禁止我这么做。
发布于 2013-10-13 08:15:35
如果您只需要使用稳定的已发布版本的Guava库,那么导入它是非常容易的。
只需转到您想要使用库(即GuavaTestProject/GuavaTest/build.gradle
)的模块的build.gradle
文件,然后
repositories {
mavenCentral()
}
添加Maven依赖项:
dependencies {
compile group: 'com.google.guava', name: 'guava', version: '15.0'
}
如果需要,可以重新构建您的项目,仅此而已(现在使用Android Studio 0.2.13创建的新项目进行了测试)。
如果您确实需要包含Guava库的源代码并将其作为Gradle构建的一个模块进行编译,这是一个完全不同的问题,因为Guava是使用Maven构建的,因此您需要将Guava构建系统从Maven迁移到Gradle,我认为对于您的目标来说,这是非常复杂的。
如果你只需要在调试时浏览或查看源代码,我会做的是:
git clone https://code.google.com/p/guava-libraries/ git checkout v15.0
我认为,如果您不需要实际修改和编译Guava源代码,这是最简单的解决方案。
发布于 2016-07-10 22:32:29
dependencies {
compile 'com.google.guava:guava:19.0'
}
来源:https://github.com/google/guava
编辑:从v22开始,有特定的guava version for Android。
dependencies {
compile 'com.google.guava:guava:22.0-android'
}
*谢谢Sam :)
发布于 2013-10-08 05:11:29
你的问题中包含了很多信息。我也在使用Guava
。但我不记得我经历过这些麻烦..
mavencentral
上提供了Guava
。因此,将芭乐添加到您的项目中应该相当简单。AFAIK,你不需要签出,构建和添加项目依赖等。
请参阅下面我的应用程序的gradle文件。
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
}
}
apply plugin: 'android'
repositories {
mavenCentral()
}
// Dependencies
dependencies {
compile fileTree(dir: 'libs', include: '*.jar') // jar files under the libs folder.
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar' // actionbarsherlock,
compile 'com.android.support:support-v4:18.0.0' // android support lib
compile 'com.google.code.gson:gson:2.2.4' // google GSON
compile 'com.google.guava:guava:14.0.1' // guava 14.0.1
}
https://stackoverflow.com/questions/19234698
复制相似问题