it-roy-ru.com

Gradle build всегда работает при чистой установке и пустом проекте

Сборки Gradle работают вечно, и я не могу понять, почему.

Я установил Android Studio на Ubuntu 15.04. Он настроен со всеми параметрами по умолчанию из мастера.

Я создал пустой проект и не добавил ни одного кода. Когда я пытаюсь построить проект, запускается процесс gradle, но он никогда не завершается. Я пытался дать ему поработать час, но прогресса не было. Я заканчиваю тем, что вынужден был вручную убить gradle, чтобы закрыть Android Studio. (через "ps aux | grep gradle; kill -9")

Я использую open-jdk 1.7, но я также пытался использовать Oracle Java (с теми же результатами).

Мой рабочий стол имеет 32 ГБ оперативной памяти. Я попытался увеличить объем памяти, выделенной для Android Studio, но безрезультатно. 

Мой процессор имеет архитектуру AMD-64. Хотя я не смог найти что-либо в Google, предполагая, что это было причиной моих бед, может быть, это ответственно?

Нет сообщений об ошибках, которые появляются в терминале, когда я запускаю studio.sh вручную. Ниже вывод терминала (аннотированный мной):

#starting Android Studio
Starting a new Gradle Daemon for this build (subsequent builds will be faster).
Starting process 'command '/usr/lib/jvm/Java-1.7.0-openjdk-AMD64/bin/Java''. Working directory: /home/cody/Documents/AndroidStudio/MyApplication Command: /usr/lib/jvm/Java-1.7.0-openjdk-AMD64/bin/Java -version
Successfully started process 'command '/usr/lib/jvm/Java-1.7.0-openjdk-AMD64/bin/Java''

#gradle starts up, this never terminates unless I terminate it myself
Starting daemon process: workingDir = /home/cody/.gradle/daemon/2.4, daemonArgs: [/usr/lib/jvm/Java-1.7.0-openjdk-AMD64/bin/Java, -XX:MaxPermSize=256m, -XX:+HeapDumpOnOutOfMemoryError, -Xmx1024m, -Dfile.encoding=UTF-8, -Duser.country=US, -Duser.language=en, -Duser.variant, -cp, /home/cody/.gradle/wrapper/dists/gradle-2.4-all/6r4uqcc6ovnq6ac6s0txzcpc0/gradle-2.4/lib/gradle-launcher-2.4.jar, org.gradle.launcher.daemon.bootstrap.GradleDaemon, 2.4, /home/cody/.gradle, /home/cody/.gradle/daemon, 10800000, fb6e1111-7ac5-4afc-9630-890712f3195f, -XX:MaxPermSize=256m, -XX:+HeapDumpOnOutOfMemoryError, -Xmx1024m, -Dfile.encoding=UTF-8, -Duser.country=US, -Duser.language=en, -Duser.variant]Starting process 'Gradle build daemon'. Working directory: /home/cody/.gradle/daemon/2.4 Command: /usr/lib/jvm/Java-1.7.0-openjdk-AMD64/bin/Java -XX:MaxPermSize=256m -XX:+HeapDumpOnOutOfMemoryError -Xmx1024m -Dfile.encoding=UTF-8 -Duser.country=US -Duser.language=en -Duser.variant -cp /home/cody/.gradle/wrapper/dists/gradle-2.4-all/6r4uqcc6ovnq6ac6s0txzcpc0/gradle-2.4/lib/gradle-launcher-2.4.jar org.gradle.launcher.daemon.bootstrap.GradleDaemon 2.4 /home/cody/.gradle /home/cody/.gradle/daemon 10800000 fb6e1111-7ac5-4afc-9630-890712f3195f -XX:MaxPermSize=256m -XX:+HeapDumpOnOutOfMemoryError -Xmx1024m -Dfile.encoding=UTF-8 -Duser.country=US -Duser.language=en -Duser.variant
Successfully started process 'Gradle build daemon'
An attempt to start the daemon took 0.99 secs.
Connected to daemon DaemonInfo{pid=9307, address=[98dcf537-f8f6-4e74-ad4d-c57a86d4a6c1 port:48946, addresses:[/0:0:0:0:0:0:0:1%1, /127.0.0.1]], idle=false, context=DefaultDaemonContext[uid=fb6e1111-7ac5-4afc-9630-890712f3195f,javaHome=/usr/lib/jvm/Java-7-openjdk-AMD64,daemonRegistryDir=/home/cody/.gradle/daemon,pid=9307,idleTimeout=10800000,daemonOpts=-XX:MaxPermSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx1024m,-Dfile.encoding=UTF-8,-Duser.country=US,-Duser.language=en,-Duser.variant]}. Dispatching request Build{id=0ec396f9-4092-4fd1-93c4-0837d861cb85.1, currentDir=/home/cody/Documents/AndroidStudio/MyApplication}.

#I manually kill gradle
The message received from the daemon indicates that the daemon has disappeared.
16
user2027722

Попробуйте Sudo apt-get install lib32z1 как в this post. У меня была та же проблема на Lubuntu, и я исправил ее таким образом.

34
Nate

В моем случае у меня уже была установлена ​​lib32z1. Проблема заключалась в плагине Genymotion.
Однажды я удалил его из студии и перезапустил. Работало нормально. 

Я до сих пор не знаю, как это могло произойти, поскольку я регулярно использую genymotion со студией на других своих машинах. 

Вы все еще можете запустить genymotion, даже если вы удалите студийный плагин, запустив эмулятор из самого genymotion.

1
Rana Ranvijay Singh

У меня установлено Centos 7 64 бит на виртуальной машине virtualbox 5.0.16 и версия 2.10 gradle с Android Studio 2.0

Файл журнала Gradle находится по адресу $HOME/.gradle/daemon/2.10 Файл журнала: daemon-<some number>.out.log

Изучив этот файл журнала, я обнаружил, что aapt не нашел libz.so.1.

Несмотря на то, что команда "locate libz.so.1" выводилась

/usr/lib64/libz.so
/usr/lib64/libz.so.1
/usr/lib64/libz.so.1.2.7

aapt не смог его найти.

Чтобы решить проблему, мне пришлось выполнить

yum install zlib.i686

После этого Gradle начал работать.

0
Juan Pablo