Como interromper a execução de tarefas do Gradle no Android Studio?

104

Existe alguma forma legítima de interrupção da execução de tarefas do Gradle no Android Studio?

Eugene
fonte
1
Estou tendo o mesmo problema desde maio de 2016. E então sai OutOfMemoryException, mesmo quando o espaço de heap está definido como "4g"
ticofab
sua pobre alma morrerá fazendo android neste shiet de IDE. Boa sorte
user30478

Respostas:

150

você pode ligar ./gradlew --stoppara um Terminal e ele irá matar todos os processos gradle

Rami Kuret
fonte
Erro: não foi possível encontrar ou carregar a classe principal org.gradle.wrapper.GradleWrapperMain
kartikag01
2
Funciona bem para forçar a parada de qualquer processo gradle, independentemente da etapa em execução. É uma pena que (a partir do Android Studio 2.2.2) o botão "parar" no AS não seja capaz de fazer a mesma coisa ...
Sébastien
1
Tive uma permissão negada, mesmo quando executando com root, no mac.
MiguelSlv
isso não ajuda caso o gradle esteja desligando, apenas encerrando o processo do Android Studio e reiniciando-o ajuda
Alexey Timokhin
48

Não, o Gradle (no momento da redação deste artigo, v1.10) tem uma limitação de que você não pode cancelar tarefas por meio de sua API de ferramentas, que é o que o Android Studio usa para se comunicar com seu daemon. Você pode acompanhar o andamento disso em https://code.google.com/p/android/issues/detail?id=59464 . Também está impedindo o progresso de outra coisa que gostaríamos de fazer, https://code.google.com/p/android/issues/detail?id=59965

Nesse ínterim, tudo o que você pode fazer é passar pelo seu sistema operacional e eliminar os processos do Gradle manualmente, o que é um pouco doloroso e confuso. É possível que isso deixe sua construção em algum estado intermediário ruim, o que bagunçaria futuras compilações incrementais, mas não tenho certeza.

Scott Barta
fonte
45
Nesse caso, eles não devem fornecer um botão Cancelar ao executar tarefas gradle.
Tushar Kathuria
5
Mesmo que o problema tenha sido marcado como "lançado" em dezembro de 2014, a partir de novembro de 2015 ainda tenho esse mesmo bug. Meu Deus, o Android Studio é simplesmente horrível.
Eduardo
Conforme mencionado abaixo, o sinalizador --stop agora funciona para isso.
Gyurme
5
É junho de 2016 e o ​​Cancelar ainda não funciona como esperado. No tópico mencionado nesta resposta, eles dizem que implementaram correções para isso, mas não vejo uma grande diferença na prática ...
Stan
matar os processos do Gradle ? Qual é o nome de um processo Gradle?
zwcloud
36

Com o Android Studio 1.3.2, um botão kill aparece quando o gradle está sendo compilado na parte inferior da tela IDE.

construir botão de matar

Parece não fazer nada, mas pelo menos há algo para empurrar. Wheee! : D

SMBiggs
fonte
10
o android studio em geral faz um monte de besteiras que não podem ser desligadas ..
Siddharth
5
Agora, o processo de "parada" não está parando
Anoop saju
Esse é um botão falso, não faz nada.
Vahid Amiri
Para mim, o comando 'gradlew --stop' no terminal e o botão kill na parte inferior, como mostrado por @Scott Biggs, funcionaram. Obrigado. Nota: Eu não usei './' antes do comando 'gradlew --stop'.
Shashi Shiva L
9

Sair do Android Studio é outra maneira de matar o daemon do Gradle ou, se a implantação no dispositivo Android estiver travada, desconectar o dispositivo pode interromper o processo (nenhuma das soluções é ideal)

scottyab
fonte
1
Bem, meu AS parará de funcionar ao sair quando uma tarefa do Gradle estiver em execução. Ainda parece responsivo, mas não atualiza a janela,
Madmenyo
6

Agradecimentos a Rami Kuret e Flavio Faria.

Você pode ligar para . \ Gradlew --stop em um Terminal e ele eliminará todos os processos do gradle no Android Studio para o sistema operacional Windows.

Você pode encontrar o terminal na parte inferior esquerda do seu Android Studio para janelas.
imagem

Ajay Yadiki
fonte
5

Algo rápido que descobri, se você quiser encerrar o processo também pode:

  1. Vá para o Gerenciador de Tarefas clicando com o botão direito na barra de tarefas e vá para "Gerenciador de Tarefas" ou simplesmente CTRL+ SHIFT+ESC
  2. Em seguida, encerrando o processo Java que está em execução.

imagem

Ab ِ
fonte
5

Quando todos os outros métodos falharem, basta usar:

ps -A | grep gradle | awk '{ print $1; }' | xargs kill -9

para obter a lista de cada processo com um keywork 'gradle' e eliminá-lo à força.

kosiara - Bartosz Kosarzycki
fonte
4

Eu sei que esta é uma questão antiga, mas agora com o Android Studio 1.2, você pode cancelar a tarefa gradle atual fechando o Android Studio, ele abrirá um diálogo de saída de Confirmação informando que há uma tarefa em execução em segundo plano, escolha Sair e, em seguida, haverá outra caixa de diálogo para cancelar tarefa em segundo plano, escolha Sim e a tarefa gradle será cancelada sem sair do Studio.

Lembre-se de limpar o projeto antes de executar outra tarefa de construção, ou algo pode estar bagunçado.

(Estou no Mac OS X)

Kientux
fonte
No Windows é semelhante. Saia do Android Studio quando o gradle estiver em execução, responda "Sair" e "Não". Depois disso, um gradle irá parar de compilar.
CoolMind de
2
@CoolMind ultimamente, se eu fizer isso, o Android Studio congela e mostra uma tela preta. Tenho até que reiniciar o Windows para compilar novamente ...
Dan Chaltiel
@DanChaltiel, talvez, isso aconteça às vezes (no meu computador o Android Studio não travou). Você limpou e reconstruiu um projeto depois de interromper o Gradle? Ou o Android Studio não permite isso? Desculpe, se este bug persistir.
CoolMind
@CoolMind Thx por responder, até fiz uma pergunta sobre isso .
Dan Chaltiel
@DanChaltiel hm, parece que Stankovitch recomendou instalar 2 Android Studios. Desculpe por uma pergunta, pode ser um problema em Java?
CoolMind
2

apenas execute .\gradlew --stopno terminal que está localizado na parte inferior do android studio depois de encerrar o processo gradle, limpe o projeto e execute o projeto novamente, espero que isso ajude você a ver a imagem para obter mais informações insira a descrição da imagem aqui

Ravi Vaniya
fonte
1

Existe um plug-in do Android Studio para isso: https://github.com/shchurov/GradleStop . Ele apenas adicionará um comando "gradle stop" e um item de menu que chamará ./gradlew --stop.

Alex
fonte
0

Não é uma forma "legítima", mas é o que eu faço.

  1. Clique em Gradle Sync enquanto o processo de criação está em andamento.
  2. O Android Studio irá avisá-lo com algo como "Continuar com o encerramento do projeto?". Clique sim.

O processo de construção será cancelado e a operação gradle Sync começará, o que é relativamente mais rápido (em comparação com esperar que todo o processo de construção seja concluído, pois tenho um projeto com MUITOS módulos de biblioteca)

Vinay W
fonte
0

A maneira como resolvi isso foi: Vá para o seu projeto -> gra insira a descrição da imagem aquiddle-wrapper.properties (Graddle Version) - Em seguida, edite o DistributionURl para a versão que você deseja. Aqui está uma foto:

Antuan
fonte
0

existem duas maneiras fáceis de pará-lo sem matar o processo.

o primeiro é que você load two projectcom o android studio, e quando você fechar seu projeto, o projeto de construção do gradle, ele será fechado imediatamente.

o segundo é simplesmente clicar em filee clicar close projecte ele irá parar instantaneamente.

os benefícios desse método são: você não precisa esperar muito para iniciar o Android Studio novamente.

Amir Hossein Ghasemi
fonte
0

Elimine o processo studio.exe do Taskmanager e reinicie sua máquina. Esta é a única coisa que funciona para mim. Se você encerrar todos os processos relacionados e não reiniciar a máquina, não poderá executar ou construir seu aplicativo porque ele dirá "Outra instância do Gradle em execução

Silent Coder
fonte
0

A partir do Android Studio 3.0, o pequeno botão cruzado vermelho próximo à barra indicadora de status de compilação do gradle parece estar funcionando!

FJJ
fonte
-1

No Windows, vá para executar pressionando windows-logo + Re digite taskkill /f /im studio64.exeque matará o Android Studio e interromperá o gradle

Anthony Ogundipe
fonte
basta reiniciar sua máquina xD
AbdElraouf Sabri