導航:首頁 > 源碼編譯 > gradle編譯時間

gradle編譯時間

發布時間:2022-10-19 13:25:11

⑴ gradle編譯速度慢怎麼解決

具體是哪個環節慢。估計是你用了maven的中心庫,導致下載很慢,自己搭建一個nexus私服,這樣就快了。

android studio 編輯build.gradle文件時卡頓時間過長是什麼原因

方法1:
1、在C:\User\<用戶名>\.gradle 目錄下新建一個gradle.properties文件,並在裡面添加一行:org.gradle.daemon=true
2、打開AS,在Settings中設置Gradle的工作模式為offline,如下圖:

這樣就可以解決一直在running的問題了
方法2:
找到路徑C:\Users\admin\.gradle\wrapper\dists,在此文件夾下有一個gradle版本文件夾,打開後是一個名字很長的文件夾,
例如我的C:\Users\admin\.gradle\wrapper\dists\gradle-2.4-all\6r4uqcc6ovnq6ac6s0txzcpc0 然後下載對應版本的gradle,將下載的壓縮包直接放進名字很長的文件夾中即可,不需要解壓

方法3:

需要在android studio 中配置gradle的代理,當然是用goagent了。
打開setting->gradle->Gradle VM Options:
-Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=8087
設置生成功後,重啟androidstudio ,速度會非常快。
方法4:
1)進入剛安裝的Android Studio目錄下的bin目錄。找到idea.properties文件,用文本編輯器打開。
2)在idea.properties文件末尾添加一行: disable.android.first.run=true ,然後保存文件。
3)關閉Android Studio後重新啟動,便可進入界面。

方法:5:
可能是由於國內的某些殺毒軟體禁用了aapt.exe進程導致的。aapt即Android Asset Packaging Tool,在SDK的build-tools目錄下。該工具可以查看,創建, 更新ZIP格式的文檔附件(zip, jar, apk)。也可將資源文件編譯成二進制文件,盡管你可能沒有直接使用過aapt工具,但是build scripts和IDE插件會使用這個工具打包apk文件構成一個Android 應用程序。
解決辦法:
網上有個解決的方法,是通過延長aapt.exe的啟動時間來解決的,在系統變數中加上「SLAVE_AAPT_TIMEOUT」,並設置值為30,同時也要在用戶變數中加上"java_HOME"的設置,不過相信只要是做java或者android開發的人都會設置好"JAVA_HOME"吧

⑶ Android 開發,Android Studio編譯慢,卡死和狂佔內存怎麼破

已經使用Android Studio進行開發超過一年,隨著項目的增大,依賴庫的增多,構建速度越來越慢,現在最慢要6分鍾才能build一個release的安裝包,在網上查找資料,發現可以通過一些配置可以加快速度,這里跟大家分享一下。
開啟gradle單獨的守護進程
在下面的目錄下面創建gradle.properties文件:
/home/<username>/.gradle/ (Linux)
/Users/<username>/.gradle/ (Mac)
C:\Users\<username>\.gradle (Windows)
並在文件中增加:
org.gradle.daemon=true

同時修改項目下的gradle.properties文件也可以優化:
# Project-wide Gradle settings.
# IDE (e.g. Android Studio) users:
# Settings specified in this file will override any Gradle settings
# configured through the IDE.
# For more details on how to configure your build environment visit
# http://www.gradle.org/docs/current/userguide/build_environment.html
# The Gradle daemon aims to improve the startup and execution time of Gradle.
# When set to true the Gradle daemon is to run the build.
# TODO: disable daemon on CI, since builds should be clean and reliable on servers
org.gradle.daemon=true
# 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
# Enables new incubating mode that makes Gradle selective when configuring projects.
# Only relevant projects are configured which results in faster builds for large multi-projects.
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:configuration_on_demand
org.gradle.configureondemand=true

同時上面的這些參數也可以配置到前面的用戶目錄下的gradle.properties文件里,那樣就不是針對一個項目生效,而是針對所有項目生效。
上面的配置文件主要就是做, 增大gradle運行的java虛擬機的大小,讓gradle在編譯的時候使用獨立進程,讓gradle可以平行的運行。
修改android studio配置
在android studio的配置中,開啟offline模式,以及修改配置。實際上的配置和上面的一大段一樣,主要是在這個地方配置的只會在ide構建的時候生效,命令行構建不會生效。

命令行構建
基於上面的配置,命令行構建時在命令後面加上這個參數即可 --daemon --parallel --offline。
引入依賴庫時使用aar
使用網上第三方的依賴庫時盡量使用aar,可以在mavenhttp://gradleplease.appspot.com/或者githuhttps://github.com/Goddchen/mvn-repo搜索。
自己的庫模塊也可以打包成aar,關於這個可以參考stormzhang的文章http://www.stormzhang.com/android/2015/03/01/android-reference-local-aar/。

⑷ Android Studio編譯慢、卡死和狂佔內存怎麼破

在2020年,仍然使用2g內存的電腦,你可以改變職業。沒有合適的設備,什麼都沒用。Android Studio是內存,設備爛卡死不可避免,要解決卡的問題,一定要升級硬體設備。另一些人則說,對修辭學的回答相當有力,在一定程度上,加快編譯的速度,卻不能解決卡死的問題,沒有人能解釋為什麼會加快編譯的速度。

至於加快編譯,有一種方法,我認為一些主要適用性的答案並不強,實際上應該從gradle開始,什麼不是正確的地方,也請輕噴,有什麼問題可以留個信息。

我談到了下面的所有步驟,建議在最後進行。在終端編譯中有很多好處:

能觀察整個編譯過程,幫助理解層次構建過程;

可以看出哪些任務在編譯過程中耗費時間,可以較慢地編寫出適合的補救方案;

可以終止編譯,如果在某個階段被卡住,CTRL + c終止編譯,Android也會終止在Studio中編譯,但基本上九次會失敗;

因為它最終會對Android Studio產生影響,基本不會導致Android Studio caton;不滿足Android工作室的各種bug ?

最後,為什麼要減少設置中模塊的數量。Gradle實際上可以加速編譯,但是有很多限制?

首先,我們認為編譯過程,首先解析gradle配置,設置任務依賴於有向圖,然後執行每個任務的模塊,如果我們通過maven的依賴關系,使用模塊的aar(單android庫),如果我們想要改變文件在這個模塊,不要再次修改上傳下載,每次都是很好,但是有一個致命的問題:不修改版本號,快照通常不是做的想法。這可能導致一些不會生效的變化,並且需要時間來解決這個問題。但是,有一種方法可以在一定程度上解決這個問題,並添加以下腳本:

項目。配置。所有(新操作<配置> ({@ Overridevoidexecute(配置文件){文件)。ResolutionStrategy。TimeUnit CacheDynamicVersionsFor(5。分鍾)

文件。ResolutionStrategy。TimeUnit CacheChangingMolesFor(0。秒)} })

有人會問,插件,每個人都要開發一個模塊,對於每個模塊的維護都要打包到maven,每次我修改,甚至很小的改動,也要做一個上傳,就會遇到快照不做同樣的問題。嘿,嘿,這個問題,我們公司有一個等級插件,已經解決了,至於解決方案,是公司機密,我不會說。

一件事,我相信大多數開發人員共同發展是單一模塊,該模塊的情況並不多,所以最基本的也是依賴aar或罐子里,並不存在所謂的圖書館aar上傳,所以一些答案的耶和華說並不意味著什麼,這就是為什麼我說影響編譯速度的情況主要集中在它的生命周期的第三階段,第三階段的優化,看到我的答案。

⑸ 如何解決android studio運行編譯速度慢

開啟gradle單獨的守護進程:
在下面的目錄下面創建gradle.properties文件:
/home/<username>/.gradle/ (Linux)
/Users/<username>/.gradle/ (Mac)
C:\Users\<username>\.gradle (Windows)
並在文件中增加:
org.gradle.daemon=true

同時修改項目下的gradle.properties文件也可以優化:
# Project-wide Gradle settings.

# IDE (e.g. Android Studio) users:
# Settings specified in this file will override any Gradle settings
# configured through the IDE.

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

# The Gradle daemon aims to improve the startup and execution time of Gradle.
# When set to true the Gradle daemon is to run the build.
# TODO: disable daemon on CI, since builds should be clean and reliable on servers
org.gradle.daemon=true

# 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

# Enables new incubating mode that makes Gradle selective when configuring projects.
# Only relevant projects are configured which results in faster builds for large multi-projects.
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:configuration_on_demand
org.gradle.configureondemand=true
同時上面的這些參數也可以配置到前面的用戶目錄下的gradle.properties文件里,那樣就不是針對一個項目生效,而是針對所有項目生效。
上面的配置文件主要就是做, 增大gradle運行的java虛擬機的大小,讓gradle在編譯的時候使用獨立進程,讓gradle可以平行的運行。

⑹ android studio 導出項目

Android Studio導入項目的幾種方法
主題 Android Studio Gradle Eclipse
Android Studio默認使用 Gradle 構建項目, Eclipse 默認使用 Ant 構建項目。建議Android Studio導入項目時,使用 Gradle 構建項目。
導入Eclipse項目
本例中,使用到的 Eclipse 項目結構
-demo為主項目, appcompat_v7 為 library 項目。
導入Generate Gradle build files項目
Google官方建議是通過本方法進行Android Studio導入 Eclipse 項目。
這種方式有一個好處就是兼容 Eclipse 的文件目錄結構,通過版本控制中的文件過濾,可以在一個項目組中,同時使用 Eclipse 和Android Studio。
講解1
File--> Export
講解2
選擇導出類型。選擇 Android --> Generate Gradle build files 。
點擊 Next 。
講解3
很長一段英語(完全看不懂是什麼意思)。
點擊 Next 。
講解4
選擇要導出的項目。
因為我的 e-demo 項目依賴了 appcompat_v7 項目,所以我將 e-demo 和 appcompat_v7 都選擇了導出。
點擊 Next 。
講解5
最終確認要導出的項目。
Force overriding of existing files表示覆蓋導出文件。使用 Generate Gradle build files 的方式導出項目,會在項目目錄中生成一些文件。這里的覆蓋文件指的就是覆蓋這些可能已經生成過的文件。如果你之前有使用這種方式導出過項目,建議勾選。
點擊 Finish 。
講解6
這一步沒有什麼好說的,直接點擊 Finish 。
講解7
Finish點擊完畢,並沒有彈出窗口顯示導出的項目,就好像什麼事情都沒有做一樣。其實,使用這個方式導出項目,是在項目中添加了一些文件,我們可以到項目目錄下去看一看這些生成文件。
工作空間目錄下
e-demo目錄下
appcompat_v7目錄下
我們可以發現:在工作空間目錄下,多出了 gradle 文件夾和 build.gradle 、 build.gradle 、 gradlew 、 gradlew.bat 、 settings.gradle 文件;在 e-demo 目錄下多出了 build.gradle 文件; 在 appcompat_v7 目錄下多出了 build.gradle 文件。這些文件和文件夾都和 Gradle 有關系,用於構建項目。這些文件以及文件夾的作用,我們以後再說。
講解8
由於 Eclipse 的 ADT 插件已經很久沒有更新了,自動生成的 Gradle 編譯設置已經跟不上Android Studio的更新速度,所以我們需要手動修改一些內容。
打開工作空間目錄下的 gradle --> wrapper --> gradle-wrapper.properties 。修改一下內容: distributionUrl=http\://services.gradle.org/distributions/gradle-a.b.c-all.zip --> distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
打開工作空間目錄下的 build.gradle 文件。修改以下內容:
classpath 'com.android.tools.build:gradle:0.x.+'--> classpath 'com.android.tools.build:gradle:1.0.0' 。
之所以這么設置,是因為: Eclipse 導出的 Gradle 設置已經不是Android Studio 1.0 所支持的 Gradle 已經 Gradle 插件版本,需要手動更為支持的版本。否則輕則必須不能離線導入項目,重則項目導入失敗。
講解9
打開Android Studio,選擇 Open an existing Android Studio project 。
講解10
此時會彈出一個框,讓你選擇文件夾,這個時候需要注意的就是,你需要選擇原來的 Eclipse 的工作空間目錄,而不是 e-demo 目錄。
點擊 OK 。
講解11
設置導入選項。
此處有一些比較重要的設置需要講解一下。
Gradle project :此處通常顯示的路徑並不是你的 Eclipse 的工作空間的目錄,而是 Eclipse 的工作空間的目錄中的 gradle 路徑。你需要手動刪除後面的 gradle ,否則項目導入,你是看不到你的代碼的,只能看到 gradle 目錄下的內容。
Create directories for empty content roots automatically :不是很明白它的作用,一般默認即可。
Use default gradle wrapper(recommended) 和 Use local gradle disribution :這兩個是讓你設置使用的 Gradle 。默認會勾選 Use default gradle wrapper(recommended) ,我們需要手動勾選 Use local gradle disribution 。
Gradle home :勾選 Use local gradle disribution 後此項編程可編輯狀態,默認的此處的地址為Android Studio安裝目錄中的 Gradle 路徑地址。此處可能會有一些錯誤的警告,提示內容為: Gradle location is incorrect 。而你的這個目錄下,確實是有 Gradle 的。產生這個問題的原因,很可能是因為 Gradle home 選項中,路徑中的斜杠為 / 而不是 ** 。你需要點擊左右的文件選擇按鈕,重新選擇到Android Studio安裝目錄中的 **Gradle ,問題即可解決。
Offline work :設置 Gradle 使用離線的方式導入項目。你可以勾選也可以不勾選。如果你有進行 講解8 的操作,你則可以勾選,以離線的方式進行編譯。
點擊 OK 。之後便會看到編譯進度條,根據每個人機器的配置,編譯的時間不同。
編譯完成之後,自動跳轉到Android Studio的主頁面。在編譯的工程中,會有以下的彈框:
之所以有這個彈框,是因為Android Studio默認使用 JAVA 1.7 進行編譯,如果你的項目不是 1.7 ,則會彈框讓你選擇。建議選擇 Yes ,因為當你使用 JAVA 1.7 的時候,只要不使用 JAVA 1.7 的資源自動釋放這個新特性,能夠完美得兼容 JAVA 1.6 的Android設備。
如果看到下面這個界面,說明你已經導入成功了。
直接導入Eclipse項目
如果不使用 Generate Gradle build files 導出項目,可以使用Android Studio直接打開 Eclipse 工作空間,進行項目導入。
不使用Gradle編譯項目
這種方式可以兼容 Eclipse 的文件目錄結構,通過版本控制中的文件過濾,可以在一個項目組中,同時使用 Eclipse 和Android Studio。但是在Android Studio中並不是使用 Gradle 構建項目,而是使用的 Ant 。
講解12
打開Android Studio,選擇 Import Non-Android Studio project 。
在彈出的目錄選擇框中,選擇 Eclipse 的工作空間 。
講解13
接下來回讓你選擇編譯環境。選擇 Create project from existing sources 。
講解14
設置 Android Studio Project 名稱以及存放目錄。一般默認即可。
點擊 Next 。
講解15
選擇資源文件以及資源文件夾。根據你需要導入的項目進行勾選。選擇一個項目的時候,你需要選擇它依賴的 Library 項目以及他的 src 和 gen 目錄。
選擇完畢,點擊 Next 。
講解16
選擇要導入的 jar 。第一個 .mylyn 是 Eclipse 插件的內容,我們需要手動過濾掉,其他的
選擇完畢,點擊 Next 。
講解17
選擇Android Studio識別出的 Mole ,也就是 Eclipse 中的 Project 。勾選你想導入的項目即可。
選擇完畢,點擊 Next 。
講解18
選擇編譯的 SDK 。在這里,你需要選擇 Android SDK ,最好和之前使用 Eclipse 時使用的 SDK 一樣。同樣,你也可以再次進行一些簡單的環境設置,在此就不說了。
選擇完畢,點擊 Next 。
講解19
選擇識別出的 AndroidManifest.xml 文件。默認全部勾選即可。
點擊 Finish ,Android Studio就開始導入項目了。
講解18
在導入的過程中,如果Android Studio識別出原項目的依賴關系,便會彈出對話框讓你進行選擇。如果想保持之前的依賴關系,點擊 OK 即可。
當你看到這個界面,就表示導入成功了。項目使用 Ant 構建,並不是Android Studio 默認的 Gradle 。
使用Gradle編譯項目
本方法有一個缺點就是,一次只能導入一個 Eclipse 項目。對於那些只使用到了官方系列的支持包的 Eclipse 項目來說,會方面很多,而且同時兼容 Eclipse 文件目錄結構。
講解19
打開Android Studio,選擇 Import Non-Android Studio project 。
在彈出的目錄選擇框中,選擇 你想導入的項目所在的目錄,而不是 Eclipse 的工作空間 。
講解20
Android Studio識別出你的項目是一個 Eclipse Android 項目,它將重新使用 Gradle 構建項目。
Android Studio會完整復制項目文件到一個新的目錄中,你需要設置這個新目錄的地址。
設置完畢,點擊 Next 。
講解21
將之前 Ant 架構改變為 Gradle 架構。
Replace jars with dependencies,when possible :將 Ant 的 jar 依賴關系使用 dependencies 重構。
Replace library sources with dependencies,when possible :將 Ant 的 library 項目的依賴關系使用 dependencies 重構。
Create Gradle-style(cameCase) mole names :使用 Gradle 的樣式構建Android Studio的 Mole 名稱。
建議全選,點擊 Finish 。Android Studio開始編譯項目,同時進入Android Studio主頁面。
同樣的,在編譯的過程中,依然會提示你語言等級的問題,選擇 Yes 。
導入Android Studio項目
Android Studio項目,指的是使用 Gradle 進行構建的項目。默認的文件結構如下:
project-name
+ app/
+ src/
+ main/
+ assets/
+ java/
+ package
...
+ res/
+ drawable/
...
+ layout
...
+ values
...
| Androidmanifest.xml
| build.gradle
+ gradle/
+ wrapper/
| gradle-wrapper.jar
| gradle-wrapper.properties
| build.gradle
| gradlew
| gradlew.bat
| settings.gradle
有的一些Android Studio項目有對 Eclipse 做兼容處理,項目結構看起來和 Eclipse 是相同的。
講解22
當你從網路上或者其他地方獲取到一份Android Studio項目源碼時,你希望能夠導入到Android Studio中。首先,你需要先對這份源碼進行一些修改。具體的修改內容,請參照 講解8 。
打開Android Studio,選擇 Open an existing Android Studio project 。
在彈出的路徑選擇框中,選擇你要導入的Android Studio項目,點擊 OK 。
講解23
然後會彈出和 講解11 相同的頁面,同樣,和 講解11 進行一樣的設置即可。

⑺ 有什麼辦法能加快Android Sudio中Gradle build速度

可以試試一些開源的build加速工具,比如 @nekocode 提到的buckbuild,Facebook開源的build 工具,速度確實提升不少,只是侵入性較強,而且配置有點麻煩,不過微信團隊已經在用了。我司內部使用的是圖大師和@別鬧騰啊 一起開發的LayoutCast。比buckbuild還快,具體可以參考項目中的對比圖。對於代碼的修改,一般build速度在2-3秒,之前的項目build一次項目需要2min多,大大提高了編譯速度,節省了不少寶貴的時間,確實很爽,不過對於資源修改支持的不是很好,還在優化。並且LayoutCast是以插件的方式支持,在代碼里簡單的配置即可。

⑻ 如何加快Android Studio的編譯速度

作為一名Android程序員,選擇一個好的IDE工具可以使開發變得非常高效,很多程序員喜歡使用Google的AndroidStudio來進行開發,但使用起來有時會出現卡頓等問題。本文介紹了幾種優化AndroidStudio啟動、編譯、運行速度的方法。首先解決一個AndroidStudio啟動報錯的問題1、進入剛安裝的AndroidStudio目錄下的bin目錄。找到idea.properties文件,用文本編輯器打開。2、在idea.properties文件末尾添加一行:disable.android.first.run=true,然後保存文件。3、關閉AndroidStudio後重新啟動,便可進入界面。優化AndroidStudio啟動速度1、開啟gradle單獨的守護進程當AndroidStudio遇到錯誤的時候,往往會導致AndroidStudio掛掉,為了防止推出程序,則另外開啟一個線程來守護AndroidStudio的進程,具體操作。在C:\Users\.gradle這個目錄下,創建gradle.properties配置文件,復制以下配置進行優化。#Project-wideGradlesettings.org.gradle.daemon=trueorg.gradle.jvmargs=-Xmx2048m-XX:MaxPermSize=512m-XX:+HeapDumpOnOutOfMemoryError-Dfile.encoding=UTF-8org.gradle.parallel=trueorg.gradle.configureondemand=true這些配置文件主要就是增大gradle運行的java虛擬機的大小,讓gradle在編譯的時候使用獨立進程,讓gradle可以很好的運行。2、擴大內存64位:\studio64.exe.vmoptionsorstudio.exe.vmoptions32位:\studio.exe.vmoptionsorstudio.exe.vmoptions編輯這個文件,在最開始的兩行設置內存大小,類似於eclipse.ini中的配置。配置如下:-Xms256m-Xmx1024m3、優化編譯時VM大小選擇file->setting->compile添加如下參數:-Xmx1024m-XX:MaxPermSize=128m-XX:+HeapDumpOnOutOfMemoryError-Dfile.encoding=UTF-8具體參數大小視電腦配置而定。經過測試,編譯速度有很大提升,比較大的項目從之前的5-8分鍾可以減少到1-2分鍾。OneAPMMobileInsight能夠實時監測移動應用的真實用戶體驗,通過Agent實現端到端的應用性能分析。幫助用戶提高發現應用問題的速度。並且可以深入到代碼級進行應用性能問題剖析,通過可視化界面展示智能移動終端的實時運行狀態。

⑼ android studio 怎麼用gradle編譯

使用Gradle來構建項目的時候,需要對Gradle的配置文件有個大概的了解,以我的一個測試應用項目為例,Gradle的配置文件主要有:
每個模塊的gradle配置文件。
整個項目的gradle配置文件。
統一管理gradle的gradle-wrapper配置文件。
整個項目的模塊引用配置文件。

閱讀全文

與gradle編譯時間相關的資料

熱點內容
自己購買雲主伺服器推薦 瀏覽:422
個人所得稅java 瀏覽:761
多餘的伺服器滑道還有什麼用 瀏覽:192
pdf劈開合並 瀏覽:28
不能修改的pdf 瀏覽:752
同城公眾源碼 瀏覽:489
一個伺服器2個埠怎麼映射 瀏覽:298
java字元串ascii碼 瀏覽:79
台灣雲伺服器怎麼租伺服器 瀏覽:475
旅遊手機網站源碼 瀏覽:332
android關聯表 瀏覽:946
安卓導航無聲音怎麼維修 瀏覽:333
app怎麼裝視頻 瀏覽:431
安卓系統下的軟體怎麼移到桌面 瀏覽:96
windows拷貝到linux 瀏覽:772
mdr軟體解壓和別人不一樣 瀏覽:904
單片機串列通信有什麼好處 瀏覽:340
游戲開發程序員書籍 瀏覽:860
pdf中圖片修改 瀏覽:288
匯編編譯後 瀏覽:491