Градиент построения Android слишком медленный (разрешение зависимостей)

Я работаю с Android Studio (моя текущая версия 1.5) в течение 2 лет. Все было в порядке, но когда я загрузил Canary (2.1 p5), все пошло не так. Каждый раз, когда я хочу создать новый проект или открыть проект или синхронизировать или импортировать новую lib или зависимость, град занимает слишком много времени для сборки – почти 20 минут .

Я ничего не делал, я только что загрузил версию Canary и запустил ее.

Симптомы:

  1. Это случилось, когда я подключился к Интернету
  2. Первая задержка – на Gradle: Resolve dependencies ': app: _debugCompile'
  3. Через 25 минут здание почти сделано

Примечание . Когда я отключу свой Интернет, градус будет завершен как можно быстрее


Я попытался исправить это следующими способами :

  1. Я изменил градиент на автономную работу (он работал, но я не хочу этого, потому что я хочу импортировать библиотеки или зависимости)
  2. Я создал новый файл (имя файла – gradle.properties ) в C:\Users\username\.gradle затем написал эти строки в него

     org.gradle.parallel=true org.gradle.daemon=true 
  3. Я удалил эту версию, а затем установил мою старую версию, которая работала нормально, но проблема все еще была 🙁

  4. Отключить / включить брандмауэр

  5. Отключить / включить AntiVirus (Nod32)

  6. Переустановка ОС Windows (8.1)

  7. Я загрузил все версии (1.0.0, …, 1.5.1, 2.0.0, 2.1)

  8. Я использовал прокси-сервер


Системная информация :

  • Процессор: Intel Core i5
  • Рам: 6,00 ГБ
  • ОС: Windows 8.1 64 бит

build.gradle (Проект: APPNAME)

 // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.5.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() } } task clean(type: Delete) { delete rootProject.buildDir } 

gradle.build (модуль: приложение)

 apply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVersion "23.0.3" defaultConfig { applicationId "com.example.test.myapplication" minSdkVersion 14 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') compile 'com.android.support:appcompat-v7:23.3.0' } 

Отчет о лошадях после строительства

 Dependencies Duration All dependencies 14m3.43s :app:_releaseCompile 3m30.96s :app:_debugCompile 3m30.73s :app:_debugApk 3m30.69s :app:_releaseApk 3m30.62s :classpath 0.428s :app:_debugAndroidTestCompile 0.001s :app:_debugAndroidTestApk 0s :app:_debugUnitTestApk 0s :app:_debugUnitTestCompile 0s :app:_releaseUnitTestApk 0s :app:_releaseUnitTestCompile 0s :app:releaseWearApp 0s :app:wearApp 0s 

После установки стабильной версии Android-студии 2.0

  • 7:23:47 PM Синхронизация Gradle началась ====> 8:13:21 PM Gradle sync завершена

Проблема решена !

После двухдневного поиска я получил решение, поэтому хотел бы поделиться со всеми людьми, у которых может быть такая же проблема. Проблема в том, что gradle не может подключиться к центральному репозиторию в какой-либо стране. Когда вы создаете новый проект или импортируете, ваш центральный репозиторий по умолчанию является jcenter() , и всякий раз, когда вы хотите создать или синхронизировать или добавить новую внешнюю зависимость, gradle собирается подключиться к https://bintray.com/, но не может И процесс сборки будет ждать подключения к jcenter() , поэтому этот процесс может занять много времени (+30 мин), даже вы не можете добавить новую зависимость.

Решение :

  1. Убедитесь, что у вас есть последняя стабильная версия (текущий 2.0.0)
  2. Убедитесь, что ваша версия gradle 2.0.0 в build.gradle ( classpath 'com.android.tools.build:gradle:2.0.0' )
  3. Конечным шагом и самым важным является изменение вашего jcenter () на mavenCentral ()

Таким образом, вы можете легко добавить новый проект зависимости и синхронизации в возрасте до 3 секунд!

 buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:2.0.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { mavenCentral() } } task clean(type: Delete) { delete rootProject.buildDir } 

Повеселись

В дополнение к @Mehdi Jahed Manesh ответьте выше.

Увеличьте объем памяти, выделенной виртуальной виртуальной машинке Gradle Daemon, на 1 Гб, как минимум на 2 Гб, используя свойство org.gradle.jvmargs

org.gradle.jvmargs = -Xmx2048m

Я видел еще одну проблему. Решение может помочь кому-то

Недавно я установил http_proxy и https_proxy в переменных системной среды. Мне пришлось удалить оба из них, а затем установить прокси-сервер в настройках студии.

В моем случае я решил это, установив новую версию Java JDK. После установки нового JDK, откройте AS, перейдите в File → Project Structure → Location SDK и измените местоположение JDK на новую версию Java JDK. Затем вам будет предложено разрешение на брандмауэр; Проверьте публикацию и примените. Пусть он разрешит град.

Изменить classpath 'com.android.tools.build:gradle:1.5.0' to

 classpath 'com.android.tools.build:gradle:2.0.0' 

И измените buildToolsVersion "23.0.3" на

 buildToolsVersion "23.0.2" 

И используйте стабильную версию Android версии 2.0. Сообщите мне, что вы хотите получить более подробную информацию, или это решение не сработало для вас.