Android Sutido 編譯速度優化

雖然Android?Studio 此時已經更新到了Android Studio 2.1版本,build 版本android-studio-bundle-143.2739321。但是在安裝該版本都是根據自己的標準進行安裝,所以需要在安裝之后進行一系列的調整。下面文章根據3個方面進行講解。分別為Android Studio本身、Gradle、不調整出現的編譯上的問題。

Android Studio優化

編譯優化需要有兩個步驟,以下一一介紹。

步驟一:Gradle編譯優化

在項目的根目錄中進行修改。修改gradle.properties,

gradle.properties 該文件的位置(H/gradle.properties)

Project-wide Gradle settings.?
IDE (e.g. Android Studio) users:?
Gradle settings configured through the IDE?will override?
any settings specified in this file.

For more details on how to configure your build environment visit?
http://www.gradle.org/docs/current/userguide/build_environment.html

Specifies the JVM arguments used for the daemon process.?
The setting is particularly useful for tweaking memory settings.?
Default value: -Xmx10248m -XX:MaxPermSize=256m?
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

When configured, Gradle will run in incubating parallel mode.?
This option should only be used with decoupled projects. More details, visit?
http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects?
org.gradle.parallel=true

根據該文件的描述,我的設置為:

org.gradle.jvmargs=-Xmx3062m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8?
org.gradle.parallel=true?
org.gradle.daemon=true

名詞解釋?
這里可以參考:?
http://www.cnblogs.com/mingforyou/archive/2012/03/03/2378143.html?
- org.gradle.jvmargs :JVM 內存管理,存在于堆上。在這里可以理解為Gradle的內存管理?
- -Xms : 初始分配的內存由-Xms指定,堆內存。?
- -Xmx : 最大分配的內存由-Xmx指定,堆內存。?
- -XX:PermSiz:JVM使用-XX:PermSize設置非堆內存初始值?
- -XX:MaxPermSize設置最大非堆內存的大小?
- org.gradle.daemon=true?
- org.gradle.parallel=true

步驟二:Android Studio 優化

找到Android Studio安裝目錄。?
我的安裝目錄在F:\Android\AndroidStudio\Soft\bin?
在這個文件 gradle.properties

-server?
-Xms512m?
-Xmx2048m?
-XX:MaxPermSize=350m?
-XX:ReservedCodeCacheSize=240m?
-XX:+UseConcMarkSweepGC?
-XX:SoftRefLRUPolicyMSPerMB=50?
-da?
-Djna.nosys=true?
-Djna.boot.library.path=

-Djna.debug_load=true?
-Djna.debug_load.jna=true?
-Dsun.io.useCanonCaches=false?
-Djava.net.preferIPv4Stack=true?
-XX:+HeapDumpOnOutOfMemoryError?
-Didea.paths.selector=AndroidStudio2.1?
-Didea.platform.prefix=AndroidStudio

從這個文件中,可以根據上面上面的名詞解釋中進行理解性修改。上面是我自己的設置。

優化前 - 存在的問題

transformClassesWithDexForDebug

  1. Error:Execution failed for task ‘:app:transformClassesWithDexForDebug’.?
    com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process ‘command ‘C:\Program Files\Java\jdk1.8.0_77\bin\java.exe” finished with non-zero exit value 3
  2. Error:UNEXPECTED TOP-LEVEL ERROR:
  3. Error:java.lang.OutOfMemoryError: GC overhead limit exceeded
  4. For faster builds, increase the maximum heap size for the Gradle daemon to more than 2048 MB.?
    To do this set org.gradle.jvmargs=-Xmx2048M in the project gradle.properties.?
    For more information see?https://docs.gradle.org/current/userguide/build_environment.html

原因

在使用Gradle編譯的時候,編譯內存不足導致。

解決方法

在項目的根目錄中進行修改。修改gradle.properties,?
set org.gradle.jvmargs=-Xmx2048M。?
修改后該問題得已解決。

轉載于:https://www.cnblogs.com/jon-snow/p/5481280.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/396015.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/396015.shtml
英文地址,請注明出處:http://en.pswp.cn/news/396015.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

卷積神經網絡計算題試題_卷積神經網絡的計算

轉自:https://zhuanlan.zhihu.com/p/631747741. 卷積卷積神經網絡中的卷積是指定義好卷積核(kernel),并對圖像(或者特征圖,feature map)進行滑動匹配,即對應位置相乘再相加。其特點就在于能夠捕捉局部的空間特征。具體過程如下圖所…

html字符串轉換jsx,javascript – 將React.element轉換為JSX字符串

我正在嘗試構建一個組件,>帶孩子和>渲染DOM中的子項,以及>出于文檔的目的,在pre中顯示子DOM一種解決方案是將JSX作為單獨的prop傳遞.這使得它重復,因為我已經能夠通過this.props.children訪問它.理想情況下,我只需要以某種方式將子prop轉換為字符串,以便我可以在pre中…

Leetcode:0002(兩數之和)

LeetCode:0002(兩數之和) 題目描述:給定兩個非空鏈表來表示兩個非負整數。位數按照逆序方式存儲,它們的每個節點只存儲單個數字。將兩數相加返回一個新的鏈表。你可以假設除了數字 0 之外,這兩個數字都不會…

《Excel 職場手冊:260招菜鳥變達人》一第 13 招 利用數據驗證給單元格添加注釋,不用批注...

本節書摘來異步社區《Excel 職場手冊:260招菜鳥變達人》一書中的第1章,第13節,作者: 聶春霞 , 佛山小老鼠 責編: 王峰松,更多章節內容可以訪問云棲社區“異步社區”公眾號查看。 第 13 招 利用數據驗證給單…

招銀網絡筆試java_春招|招銀網絡Java軟件開發 電話面試+一二三面面經

電話面試:1.自我介紹2.介紹項目經歷(我介紹的時候說了用到spring,spring MVC和hibernate框架)3.為什么用spring框架,有什么優點4.詳細說下aop5.解釋下IOC,IOC有什么好處6.spring MVC的運行流程7.spring除了注解注入還有什么方式8.hibernate框…

Numpy and Pandas

安裝 視頻鏈接:https://morvanzhou.github.io/tutorials/data-manipulation/np-pd/ pip install numpy pip install pandas Numpy 學習 Numpy屬性 import numpy as nparray np.array([[1,2,3],[2,3,4]]) print(array) print(number of dim:,array.ndim)//幾維度 pr…

認證android retrofit,Retrofit之項目介紹

項目介紹官網對retrofit介紹是這是一個"類型安全(type-safe)"的Android/Java http客戶端. 目前retrofit的最新正式版本為1.9.0. 2.0版本預計2015年底發布, 相較于之前版本, 2.0版本在架構上做了很大改變, 本文代碼相關的內容都是基于retrofit2.0-beta2.注: 在編程語言…

層次聚類算法 算法_聚類算法簡介

層次聚類算法 算法Take a look at the image below. It’s a collection of bugs and creepy-crawlies of different shapes and sizes. Take a moment to categorize them by similarity into a number of groups.看看下面的圖片。 它是各種形狀和大小的錯誤和令人毛骨悚然的爬…

.h .dll .lib

.h為對一個函數的聲明引用,include就是聲明某個文件里的函數(內只有聲明函數被引用了),編譯時使用 .lib為鏈接時用的,存放的是對于DLL里函數的位置信息等,這樣不必把所有dll里函數都加載到內存里&#xff0…

《機器人學經典教程》——2.2 控制論

本節書摘來異步社區《機器人學經典教程》一書中的第2章,第2.2節,作者:【美】Maja J. Matari?(馬婭?馬塔里奇),更多章節內容可以訪問云棲社區“異步社區”公眾號查看。 2.2 控制論 隨著控制理論的不斷發展…

嗶哩嗶哩網站前端源碼_分享一個仿制嗶哩嗶哩鏡子網站源碼

我老婆非常喜歡看嗶哩嗶哩,前些天她興奮地和我說嗶哩嗶哩網站有個隱藏的彩蛋,傳送門http://www.ilidilid.com/,我看了下,相當于把鏡子中的網站樣子弄出來了。于是,我尋思著,把自己的博客也弄個這樣的彩蛋&a…

promise-async-await

通常而言,這3個關鍵字 都是用來「優雅」的處理ajax異步請求的 //es6的時候promise誕生,很好的解決了嵌套回調地獄,改良方案為鏈式回調。// es2017的時候誕生了async、await,這下異步直接沒有回調了,像同步一樣爽//沒有…

第一沖刺階段博客檢查

我們檢查的團隊是:紅鳥 ①團隊博客: 該團隊將所有的站立會議均寫到了4月28日的一篇博客中,并且其中任務看板和燃盡圖不全。 ②團隊成員個人博客: 1>張曉晨: 沒有每天個人工作總結。 2>王曉思: 從4.19…

netcore 編譯 html,Asp.Net Core中的@ Html.Action

小編典典更新:從2.2.2版本開始,HttpContextAccessor將上下文保留在一個對象中(據說是為了防止請求之間的混淆),這會影響當前解決方案…因此,您需要為IHttpContextAccessor(舊版本)提供以下實現并進行注冊作為一個單例:…

《CCIE路由和交換認證考試指南(第5版) (第1卷)》——1.6節虛擬交換系統

本節書摘來自異步社區《CCIE路由和交換認證考試指南(第5版) (第1卷)》一書中的第1章,第1.6節虛擬交換系統,作者 【美】Narbik Kocharians(那比克 科查理安) , 【斯洛伐克】Peter Pal…

機器學習 美股_我如何使用機器學習來探索英美文學之間的差異

機器學習 美股by Sofia Godovykh索非亞戈多維克(Sofia Godovykh) 我如何使用機器學習來探索英美文學之間的差異 (How I used machine learning to explore the differences between British and American literature) As I delved further into English literature to further…

遠程執行漏洞修復方案_請馬上修復!SaltStack遠程命令執行漏洞

【漏洞預警】SaltStack遠程命令執行漏洞(CVE-2020-11651、CVE-2020-11652)2020年5月3日,阿里云應急響應中心監測到近日國外某安全團隊披露了SaltStack存在認證繞過致命令執行漏洞以及目錄遍歷漏洞。漏洞描述SaltStack是基于Python開發的一套C/S架構配置管理工具。國…

kafka部分重要參數配置-broker端參數

broker端參數主要在config/server.properties目錄下設置: 啟動命令:nohup ./kafka-server-start.sh -daemon ../config/server.properties & broker.id參數:Kafka使用唯一的一個整數來標識每個broker,全局唯一,默認…

JS正則表達式大全(整理詳細且實用)

JS正則表達式大全(整理詳細且實用) 作者: 字體:[增加 減小] 類型:轉載 時間:2013-11-14 我要評論 JS正則表達式大全(整理詳細且實用)。需要的朋友可以過來參考下,希望對大家有所幫助正則表達式中的特殊字符 字符 含意…

html設置模塊寬度為200像素,css 寬度(CSS width)

DIV CSS寬度width樣式屬性CSS 寬度是指通過CSS 樣式設置對應div寬度,以下我們了解傳統html寬度、寬度自適應百分比、固定寬度等寬度知識。傳統Html 寬度屬性單詞:width 如width"300";CSS 寬度屬性單詞:width 如width:300px;一、Wid…