Kon*_*ski 20 android gradle guava android-studio android-gradle-plugin
首先,我知道这个问题的存在 - 如何向Android Studio添加库项目? - 不幸的是,它没有帮助我.
我的目标很简单.我想使用Android Studio IDE(0.2.11)编写Android应用程序,并在我的代码中编写Guava库.
我不知道Gradle,我只是开始使用Android Studio而且我的Visual Studio/C#背景让我失望了,为此我道歉(在Mickey Mouse世界中,你通常只是添加一个库参考,然后离开).
我将用截图记录我的步骤.我大多遵循这个答案给出的建议.
我在libraries项目文件夹下创建了一个文件夹.

我将Guava存储库克隆到其中.

文件成功出现.

我去了Project Structure并选择了Import Module.


我选择Create module from existing sources并同意所有默认选择.
我将settings.gradle文件更新为include ':libraries:guava', ':Test':

我的build.gradle文件compile project(":libraries:guava"):

但是,每当我尝试重建项目时,我所得到的就是:
Error: Gradle: A problem occurred configuring project ':Test'.
> Failed to notify project evaluation listener.
> Configuration with name 'default' not found.
Run Code Online (Sandbox Code Playgroud)
我确实尝试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']
}
}
}
Run Code Online (Sandbox Code Playgroud)
(如前面的答案所说).
我上下搜索,找到build.gradle番石榴的"正确" .
https://code.google.com/p/guava-libraries/wiki/UseGuavaInYourBuild - 也没有帮助我.
我也尝试了无数东西,因为他们是相当偶然的,我不会在这里形容-我尝试添加一个模块依赖,我试图打开Use auto-import在Gradle settings等
我知道这不是一种解决问题的方法,我保证我会从1到5.4.2到7.3 努力阅读Gradle的用户指南,但我无法相信这是实现像仅仅添加库一样不起眼的事情的先决条件.项目?为什么没有默认build.gradle文件,如果有必要,可以开始摆弄各种各样的东西?
真正的问题 - 我如何创建一个构建的应用程序(在Android Studio中),实际上在Android设备上运行,并且最重要的是允许我使用Guava,因此我可以按值对地图进行排序,而无需编写50行代码?:)
抱歉我的问题很温和,我知道在这里练习,这只是我放弃挫折感的方式.
根据解决类似问题的问题和答案投了多少票,我敢肯定,我不是唯一一个能从更多指令中受益的人.我会立即开始给它一个赏金,但规则禁止我.
jlh*_*tas 44
如果您只需要使用稳定的,发布的Guava库版本,那么导入它非常容易.
只需转到build.gradle要使用库的模块文件(即GuavaTestProject/GuavaTest/build.gradle),然后立即转到
repositories {
mavenCentral()
}
Run Code Online (Sandbox Code Playgroud)
添加Maven依赖项:
dependencies {
compile group: 'com.google.guava', name: 'guava', version: '15.0'
}
Run Code Online (Sandbox Code Playgroud)
如果需要,重建您的项目,这就是全部(现在使用Android Studio 0.2.13创建的新项目进行测试).
如果你真的需要包含Guava库的源代码并自己编译作为Gradle构建的一个模块,这是一个完全不同的问题,因为Guava是用Maven构建的,所以你需要将Guava构建系统从Maven移动到Gradle,我认为这对你的目标来说非常复杂.
如果您只需要在调试时浏览源或查看它,我会做的是:
在单独的文件夹中下载Guava源代码:
git clone https://code.google.com/p/guava-libraries/
git checkout v15.0
Run Code Online (Sandbox Code Playgroud)当Android Studio找不到源时,请单击"附加源"并指向此备用位置.
我想如果你不需要实际修改和编译Guava源代码,这是最简单的解决方案.
Ali*_*aka 10
dependencies {
compile 'com.google.guava:guava:19.0'
}
Run Code Online (Sandbox Code Playgroud)
资料来源:https://github.com/google/guava
编辑:从第22节开始,Android有特定的番石榴版本.
dependencies {
compile 'com.google.guava:guava:22.0-android'
}
Run Code Online (Sandbox Code Playgroud)
*谢谢Sam :)
这就是你问题中的很多信息.我Guava也在用.但我不记得经历过任何这样的麻烦..
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
}
Run Code Online (Sandbox Code Playgroud)
不要使用完整的番石榴库,请使用特定于android的版本,
dependencies {
compile 'com.google.guava:guava:23.0-android'
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
32727 次 |
| 最近记录: |