Chr*_*ris 23 eclipse android gradle
我有一个应用程序,需要为不同的客户使用不同的资源多次构建(品牌,配置和客户之间预先加载的数据更改).
在今年的Google I/O之后,我听说过基于Gradle的新Android构建系统.所以我想,使用Gradle构建脚本实现这个单源/多apks场景是个好主意.
现在我的问题出现了:如何在坚持Eclipse的同时开始使用Gradle进行构建?我在网上发现的所有读取都指向将项目转换为仍然不成熟的Android Studio.我想推迟迁移到Android Studio,直到被Google声称"安全"用于生产.
理想情况下,我希望能够将构建脚本挂钩到Eclipse的调试和运行配置,这与我可以选择的方式非常相似,并选择不同的构建目标来在XCode中进行调试和存档.如果可能的话,需要采取哪些步骤来完成这项工作?
我为这些问题的无聊质量道歉,但对我而言,这实际上是一个相当未被发现的国家.任何帮助表示赞赏.
编辑: 我们的团队已于2013年10月下旬迁移到Android Studio,因为版本0.4正在遇到越来越少的错误.如果您的组织对于采用1.0之前的环境进行开发并不过于保守,我建议您尽量避免使用Android Studio及其Gradle构建系统.缺少恕我直言的唯一重要的事情是对单元测试的体面支持.
Pau*_*est 24
可以使用2个构建系统(基于Eclipse + gradle).只需确保输出文件夹不同(bin对于ADT,build对于gradle).(更新TL; DR:检查Nodeclipse/Enide Gradle for Eclipse
(市场))
File -> Export -> Generate Gradle build files将添加build.gradle下面的内容(但检查版本).没有更改现有文件.
com.android.tools.build:gradle版本应该是最新的.对于gradle类型,gradle build如http://tools.android.com/tech-docs/new-build-system/user-guide中所述.尝试gradle tasks更多.(在我缓慢的Internet连接上花了1个小时!为gradle下载所有需要的依赖项)
Vogella教程http://www.vogella.com/articles/AndroidBuild/article.html尚未准备好.其他在线教程还没有真正完成http://www.jayway.com/2013/02/26/using-gradle-for-building-android-applications/
Eclipse ADT尚未使用gradle,我认为它将首先在Android Studio中完善.在两个IDE中同时开始使用不断发展的技术并不是那么明智.
见build.gradle下面的例子.如果你已经掌握了gradle,那么根本不需要巫师.对于build.gradle经典Android项目的最新模板,请检查gh.c/N/n-1/b/m/oneeg/docs/android/build.gradle.
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
}
}
apply plugin: 'android'
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
}
android {
compileSdkVersion 8
buildToolsVersion "19.0.0"
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
// Move the tests to tests/java, tests/res, etc...
instrumentTest.setRoot('tests')
// Move the build types to build-types/<type>
// For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
// This moves them out of them default location under src/<type>/... which would
// conflict with src/ being used by the main source set.
// Adding new build types or product flavors should be accompanied
// by a similar customization.
debug.setRoot('build-types/debug')
release.setRoot('build-types/release')
}
}
Run Code Online (Sandbox Code Playgroud)
Eclipse Marketplace不附带ADT-Bundle,因此可以使用更新站点.
更新用于Eclipse的Gradle Integration的 p2存储库是
http://dist.springsource.com/release/TOOLS/gradle
但是从版本3.4.0开始,它不为.gradle文件提供编辑器.所以对于Android开发没有任何意义.
我会使用默认的ADT构建,将gradle作为实验的辅助构建,并在http://tools.android.com/tech-docs/new-build-system上的错误流量变得罕见时保持关注.(那应该是正式1.0版本)
更新时间:2014-04-15
Alex Ruiz(来自Android团队)关于Android,Gradle和ADT的博客
Android的Gradle模型
我们决定使用与Gradle项目无关的IDE表示,而不是创建特定于IDE的Android/Gradle模型.这样,我们就拥有了一个易于维护的单一信息源.IDE集成将作为每个支持的IDE(在我们的例子中,Eclipse和IDEA)的插件实现.这种方法的主要好处是我们可以独立于IDE集成插件发布Gradle插件.例如,我们可以发布一个新版本的Eclipse插件,该插件具有多个错误修复,而不会影响Android的Gradle端.
截至2014年4月,eclipse-gradle插件与android-gradle插件不兼容:
正如Android团队在问题57668中所回答的那样(由@arcone提出)
项目成员#2 x ... @ android.com
eclipse插件与android插件不兼容.
您将无法使用Eclipse中的默认Gradle支持将Android gradle项目导入Eclipse.
为了使它在Eclipse中工作,我们将不得不更改Eclipse的Gradle插件,就像我们在IntelliJ中修改Gradle支持一样
那就是Android团队正在开发IntelliJ的gradle插件,Eclipse的gradle插件也需要更新.
有努力在Nodeclipse平滑的过渡时间.并继续在Eclipse中开发,同时仍在试验或完全使用gradle.
用于Eclipse的Nodeclipse/Enide Gradle (市场)
Gradle for Eclipse的一些截图:

| 归档时间: |
|
| 查看次数: |
16135 次 |
| 最近记录: |