首先,我意识到这个问题的存在 – 如何将一个库项目添加到Android Studio? – 不幸的是,它并没有帮助我。
我的目标相当简单。 我想使用Android Studio IDE(0.2.11)和我的代码中的Guava库编写一个Android应用程序。
我不知道Gradle,我只是开始使用Android Studio,而我的Visual Studio / C#背景已经让我失望了,对此我表示歉意(在那个米老鼠的世界里,你通常只是添加一个库引用而不用去)。
我将用截图logging我的步骤。 我主要遵循这个答案给出的build议。
我在我的项目文件夹下创build了一个libraries
文件夹。
我克隆了Guava版本库。
文件成功出现。
我去了Project Structure
并selectImport Module
。
我Create module from existing sources
selectCreate module from existing sources
并同意所有的默认select。
我更新了我的settings.gradle
文件, include ':libraries:guava', ':Test'
:
和我的build.gradle
文件与compile project(":libraries:guava")
:
但是每当我尝试重build项目时,我都会得到:
Error: Gradle: A problem occurred configuring project ':Test'. > Failed to notify project evaluation listener. > Configuration with name 'default' not found.
我曾尝试把下面的一个build.gradle
在guava
文件夹中:
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'] } } }
(如上述答案所述 )。
我已经上下search,find“正确”的番石榴build.gradle
。
https://code.google.com/p/guava-libraries/wiki/UseGuavaInYourBuild – 也没有帮助我。
我尝试了无数的事情,我不会在这里描述,因为他们是相当随意的 – 我试着添加一个模块依赖项,我尝试在Gradle settings
Use auto-import
。
我知道这不是一个解决问题的方法,我保证我会认真阅读Gradle的用户指南,从1到5.4.2到7.3,但我不能相信这是实现一个不起眼的事情的前提,项目? 为什么没有默认的build.gradle
文件,从中可以开始摆弄各种各样的东西,如果有必要?
而真正的问题 – 我如何创build一个应用程序(在Android Studio中)构build,实际上运行在Android设备上,并在顶部允许我使用番石榴,所以我可以按值sorting地图而不写50行代码? 🙂
对于我这个问题的提问语气抱歉,我知道在这里演练,这只是我放下挫折的方式。
根据处理类似问题的问题和答案投了多less票,我相信我不是唯一能从更多指示中受益的人。 我立即开始赏金,但规则禁止我。
如果你只需要使用一个稳定的发布版本的番石榴图书馆,导入它是非常容易的。
只要去你想要使用库的模块(即GuavaTestProject/GuavaTest/build.gradle
)的build.gradle
文件,
repositories { mavenCentral() }
添加一个Maven依赖:
dependencies { compile group: 'com.google.guava', name: 'guava', version: '15.0' }
如果需要的话重build你的项目,这是全部(现在用Android Studio 0.2.13创build的新项目进行testing)。
如果你真的需要包含Guava库的源代码,并将它自己编译为Gradle构build模块,那么这是一个完全不同的问题,因为Guava是使用Maven构build的,因此需要将Guava构build系统从Maven移动到Gradle,我认为你的目标非常复杂。
如果您只需浏览源代码或在debugging时查看它,我会做的是:
在单独的文件夹下载Guava源代码:
git clone https://code.google.com/p/guava-libraries/ git checkout v15.0
当Android Studio找不到来源时,点击“附加来源”并指向这个替代位置。
我想如果你不需要修改和编译Guava源代码,这是最简单的解决scheme。
这在你的问题很多信息。 我也使用Guava
。 但我不记得经历过这个麻烦
Guava
是可用的在mavencentral
。 所以添加番石榴到你的项目应该是相当简单的。 AFAIK,你不需要签出,build立和添加项目依赖等。
请参阅下面的我的应用程序的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 }
dependencies { compile 'com.google.guava:guava:19.0' }
来源: https : //github.com/google/guava
编辑:从第22 版,有Android的具体番石榴版本 。
dependencies { compile 'com.google.guava:guava:22.0-android' }
*感谢山姆:)
在Android Studio 0.3.0这现在正如它应该在Mac上。 有关添加库的其他选项,请参阅发行说明http://tools.android.com/recent/androidstudio030released
我一直在Windows上工作,有两个选项右键单击库中的jar,你有一个添加到库或者你可以推F4和打开库设置,所以看起来你不必在Windows上挣扎如在Mac上
这就是我所做的。 请阅读到最后,因为它的工作不一致,如果你没有看到蓝色的箭头先尝试有一个解决scheme。 首先我创build了一个libs文件夹。 我不认为这是必要的,但这是一种习惯。
首先尝试去文件,项目结构。
如果您看到左上angular有一个蓝色的小箭头,那么您将会进入可以添加库的屏幕
如果你设法在下面的屏幕上按下加号并添加库。
你也可以在底部看到一条红线,说番石榴不用灯泡。 这个填充将依赖添加到Gradle构build文件
如果你不看蓝色箭头
转到文件,其他设置,默认项目结构。
在该屏幕上,您可以添加库
然后回到项目结构并添加它。 问题是,它将作为所有项目的默认值,所以您可以通过项目结构菜单为每个单独的项目添加和删除它。 我不确定这是否是Android Studio中的一个错误,您可以阻止将其添加到单个项目而不更改默认值。
不要使用完整的番石榴库,使用特定于android的版本,
dependencies { compile 'com.google.guava:guava:23.0-android' }