Home > Tecnologia > Informática > Erro nas actualizações do Android Studio em Linux

Erro nas actualizações do Android Studio em Linux

Após instalar o update do Android Studio 2.1 no meu PC Linux, e este me pedir para actualizar as SDK tools, deparei-me com um erro:

“No space left on device…”

Reparei que haviam mais pessoas a reportar este problema que se deve ao facto de a JVM usar, por defeito, a directoria /tmp como directoria temporária. Tendo encontrado a solução, decidi escrever este artigo e tentar ajudar quem se depare também com este problema.

A causa está no espaço que normalmente é reservado para esta directoria temporária: /tmp. Muitas das distribuições de Linux usam esta directoria para armazenamento temporário e monta-a numa partição RAM FS (digamos que um disco RAM) com cerca de metade do tamanho da memória instalada. Se, por exemplo, o computador tiver 4Gb de RAM, a directoria /tmp terá 2Gb. Ora, alguns dos ficheiros das actualizações do Android Studio têm cerca deste tamanho, ou mais e, durante o download, a directoria /tmp enche e fica sem espaço livre.

A solução: Indicar outra directoria como directoria temporária. Para tal, passamos à VM do JAVA o argumento:

-Djava.io.tmpdir=/caminho/para/temporária

No meu caso, decidi criar uma directoria “tmp” na minha “home” e indicar este argumento nos ficheiros de configuração do Android Studio.

Android Studio - Definindo as opções da VMPara o efeito, dentro do Android Studio, vamos ao menu “Help > Edit Custom VM Options”.

O AS irá abrir um documento com o nome “studio64.vmoptions” que se situa em:

~/.AndroidStudio2.1/studio64.vmoptions

(O caminho poderá ser diferente, conforme a versão do AS).

Neste ficheiro, temos as opções que são enviadas à JVM para executar o AS. Neste ficheiro, adicionamos a linha, por exemplo, para um user com o nome carlos:

-Djava.io.tmpdir=/home/carlos/tmp

Deve-se evitar o uso do “~”. Por exemplo, se colocar ~/tmp, será criada uma directoria ‘~’ na sua home!

Depois de reiniciar o Android Studio, as actualizações já deverão correr com sucesso! Porém, certifique-se que tem espaço suficiente na sua directoria “home”! Pode sempre optar por outra directoria, desde que tenha permissões de acesso a esta.

NOTA: Se tiver problemas idênticos durante a compilação com o “gradle”, esta solução também poderá resolver o problema!



Este artigo foi escrito com a antiga grafia.

About Carlos Santos

Frequência em mestrado de Engenharia Electrotécnica e de Computadores. Programador freelancer: Websites, Aplicações Web (JAVA e PHP), J2SE/J2EE, C/C++ e Android. Explicador e formador em informática, matemática e electrotecnia. Formação presencial ou remota através de Skype e Team Viewer. Interesses: Música, áudio, vídeo, ciência, astronomia e mitologia.

Leave a Reply

Your email address will not be published and it is optional.