受够了 Gradle

2016-01-16 21:42:50 +08:00
 pheyer
本身做 iOS 开发的,最近有些东西需要看 Android 的代码,简单地看了一本书大概入门,直接从 Android Studio 上手。然后下载了几个 Github 上的 Android app 开源代码学习,每次都要在 Gradle 上卡半天时间,简直是受够了,有人说它像 CocoaPods ,真的感觉与 iOS 的 CocoaPods 一个地下一个天上啊
觉得 Gradle 就像是一个重要的依赖库,不同的 app 用不同版本的 Gradle ,每个 app 都要去下一次,还都是 60 多 M 的东西,这设计思路是不是要得改改?
刚开始是每次都要去下载 Gradle 文件,即使爬墙也很慢,后来学乖了,知道用 Use local gradle distribution 了,然后就是在 Gradle: Configuring projects 那里总是卡,又是卡半天。。。这时间浪费得真是哗哗地。。
一个 Android 新手的吐槽,大家随意看吧
11973 次点击
所在节点    Android
34 条回复
kassadin
2016-01-16 21:46:38 +08:00
➜ ~ du -sh .gradle
2.8G .gradle
int64ago
2016-01-16 21:54:59 +08:00
所以必须是 MBP 顶配才有资格做 Android 开发,不搞点门槛出来不能显 B 格

比如我这个 Thinkpad 屌丝编译 Android 的时候

pheyer
2016-01-16 22:00:14 +08:00
@kassadin 我这个新手都有这么多啦
➜ ~ du -sh .gradle
1.0G .gradle
另外发现.gradle/wrapper/dists/目录下的每个 gradle 版本都是不唯一的,在里面好像还要根据应用区分,在应用文件夹里 gradle 版本又可能与另一个应用文件夹的 gradle 版本,是一个版本但是有两份,无以吐槽
kslr
2016-01-16 22:00:15 +08:00
好几 G 啊好几 G
pheyer
2016-01-16 22:06:07 +08:00
@kslr 反正我觉得这几天搞 Android 后我的硬盘空间缩水很快,昨天还是前天就警告磁盘空间不足了
wizardforcel
2016-01-16 22:08:10 +08:00
没感觉。
hongfeiyu
2016-01-16 22:13:28 +08:00
一个应用只用加载一次吧
而且 Eclipse 没这个
westlinkin
2016-01-16 22:21:13 +08:00
➜ ~ du -sh .gradle
5.2G .gradle
AnotherM
2016-01-16 22:37:06 +08:00
爬墙是啥?一个 hosts 搞定了 这货感觉比较好的就是想导入一些 Library 的比如 Android Design Support Library 时候,直接 compile 'com.android.support:design:23.1.1',还有,表示 i5-4210H 在打开依赖比较多的 app 的时候根本不够用, 8G 内存打开 Studio 直接没了一半,所以说真想玩好 studio 这货,没个 E5-2699 v3+4*8G 2133 DDR4 还真不行(误)
pheyer
2016-01-16 22:42:17 +08:00
@AnotherM 就是翻越长城啊
maomaomao001
2016-01-16 22:52:38 +08:00
@westlinkin as 有没有办法不用 gradle ,这个好慢啊
可以像之前的 ADT 那样开发就好了
AnotherM
2016-01-16 22:56:13 +08:00
@pheyer 我用 doge 表情就代表我知道意思,你去老 D 博客翻翻他的 hosts 用一下再试试,如果还觉得慢,找到 studio 安装目录下 bin\studio.exe.vmoptions 和 studio64.exe.vmoptions 用 notepad 打开,改一下 xms 和 xmx 的值,具体大小视你内存而定, xmx 后面那两个的值也可以修改,具体是啥我也不了解,反正我是 xms1024m xmx4096m ,改完了比原来 gradle 编译快了将近 4 倍, PS 刚刚忘了说了,除了 E5 和 4*8G 你还需要一个 Intel SSD 750
dabaitu
2016-01-16 22:58:33 +08:00
最近升级了 2.0 感觉快了不少了已经
hei1000
2016-01-16 22:58:39 +08:00
@pheyer 其实他肯定知道翻墙啦,只不过他用的 hosts 方式, hosts 的确更方便
pheyer
2016-01-16 23:01:43 +08:00
@dabaitu 是吗,不知道 Gradle 改进了啥,我还在用 1.5.1
pheyer
2016-01-16 23:02:10 +08:00
@AnotherM 后面我试一下,我用 Mac ,应该是一样的
AnotherM
2016-01-16 23:14:59 +08:00
@pheyer Mac 的我不知道,不过道理都是通过修改虚拟机内存最小限制和最大限制来加快速度,原来在 Windows 上 xmx 是 750 的时候,到了 gradle 构建时候这货就给我限制到了 400m ,改成 4096 之后,任务管理器看 studio 使用,轻松上 1.5g ,如果不是因为 i5 不够用估计会更快,还有上面说的 2.0 你可以试试,不过貌似主要快在了虚拟机和 gradle 构建上
clino
2016-01-16 23:21:49 +08:00
我能说我看到这个主题内容会有点快感咩...
其实构建这种东西还是用动态脚本语言来做比较合适
bkmi
2016-01-16 23:36:36 +08:00
都不知道楼上的在说些什么,
请注意!! Gradle 不是依赖库,而是一个构建工具。
楼主何不花个半小时,了解一下 Gradle 。
[不同的 app 用不同版本的 Gradle] ,这个是因为你使用的是 gradlew
你可以下载一个最新的 Gradle ,然后将其加入 PATH 。。使用本地的 gradle 来进行构建,而不是下载。
miao1007
2016-01-16 23:47:16 +08:00
JAVA_OPTS=-Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=8787 -Dhttps.proxyHost=127.0.0.1 -Dhttps.proxyPort=8787
MAVEN_OPTS=-Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=8787 -Dhttps.proxyHost=127.0.0.1 -Dhttps.proxyPort=8787
GRADLE_OPTS=-Dgradle.user.home=/Users/leon/.gradle

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/251251

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX