При создании с gradle в многопроектной установке, содержащей примерно 140 проектов/библиотек, время сборки занимало 1 час и 22 минуты. И я использовал --parallel
. И наша сборка ANT занимает менее 20 минут без параллельного построения.
Вот что я сделал.
./gradlew clean
./gradlew build --parallel
Я немного тестировал, похоже, что dexing занимает самое длинное время. Есть ли способ получить процесс gradle для повторного использования материала, который он уже расшифровал? Если библиотеки уже построены, он должен повторно использовать уже декодированные библиотеки.
Я видел вариант --no-rebuild
, но когда я запускаю этот параметр, он говорит следующее
File '/path/to/project/build/libs/project.aar' specified for property 'bundle' does not exist.
Я заменил путь файла и имя проекта на общий материал.
Использование gradle 1.9-rc-3
Дополнительная информация (15 января 2014 года):
preDexDebug
и preDexRelease
заняли очень много времени в каждом проекте. Гораздо больше, чем любая другая задача.
Прогресс (15 января 2014 года):
Хорошо, теперь я помещаю preDexLibraries = false
во все файлы build.gradle
. Тем не менее, мне все же хотелось бы знать централизованное место, которое я могу поместить в эту запись, и оно влияет на все остальные файлы build.gradle
.
Однако теперь dexRelease
и dexDebug
занимают много времени. Есть ли способ, который я могу сказать сборке только для dexDebug
или dexRelease
и пропустить другую?
Прогресс (15 января 2014 года):
Работает assembleDebug
. Тем не менее, по-прежнему кажется, что он не повторяет использование уже декодированных библиотек. Потому что dexing все еще принимает навсегда. Для каждого проекта требуется около минуты. Есть ли способ получить gradle для повторного использования уже декодированных библиотек? Или существует другая причина, почему сборка занимает около часа? Наш процесс ANT занимает менее 15 минут.