A divisão lib_main foi definida várias vezes

102

A divisão lib_main foi definida várias vezes

Em "com.android.tools.build:gradle:2.0.0-alpha3" sucesso de compilação, mas os erros que ocorrem no "com.android.tools.build:gradle:2.0.0-alpha5".

erro de console


finalmente trabalho de corrida instantânea !! com.android.tools.build:gradle:2.0.0-alpha8 e gradle.properties "org.gradle.jvmargs = -Xmx8g" foi resolvido para mudar.

Shinhyo
fonte
Tendo exatamente o mesmo problema. Você está usando variações de produtos e applicationIdSuffix por acaso?
Michael De Soto
Infelizmente, não use "sabores de produto" e "applicationIdSuffix". mas usando "MultiDex".
shinhyo de
6
mesmo erro aqui, desabilitar a execução instantânea ajuda. Acontece apenas para dispositivos que executam o Android 6. Android Studio 2.0 5 Usando applicationIdSuffix, MultiDex, Não usando sabor do produto
Feliz Dev
1
@Happydev Resolvido com a desativação do instantrun!
shinhyo de
1
@bkurzius não parece uma solução para mim, todo o ponto de atualização foi executado instantaneamente. Eu esperava que alguém encontrasse algo como remover alguma biblioteca ou plugin ... porque a execução instantânea funciona muito bem no Marshmallow em outro projeto.
Feliz Dev

Respostas:

103

Para aqueles que se perguntam o que é InstantRun (primeira configuração na imagem): insira a descrição da imagem aqui

E sim, desabilitar essa configuração corrige o problema.

Editar 19/01/16

'com.android.tools.build:gradle:2.0.0-alpha6' foi lançado três dias atrás. Usando essa nova versão, o erro "Split lib_main foi definido várias vezes" desapareceu e a instalação do aplicativo foi bem-sucedida, mas agora recebo um erro de tempo de execução:

java.lang.RuntimeException: Unable to instantiate application
com.android.tools.fd.runtime.BootstrapApplication:
java.lang.ClassNotFoundException: Didn't find class
"com.android.tools.fd.runtime.BootstrapApplication" on path:
DexPathList[[zip file "/data/app/com.onegravity.k10.pro2-2/base.apk",
zip file "/data/app/com.onegravity.k10.pro2-/split_lib_main.apk"]

Caused by: java.lang.ClassNotFoundException: Didn't find class
"com.android.tools.fd.runtime.BootstrapApplication" on path:
DexPathList[[zip file "/data/app/com.onegravity.k10.pro2-2/base.apk",
zip file "/data/app/com.onegravity.k10.pro2-2/split_lib_main.apk"]

Suppressed: java.io.IOException: No original dex files found for dex location
/data/app/com.onegravity.k10.pro2-2/base.apk

Suppressed: java.lang.ClassNotFoundException:
com.android.tools.fd.runtime.BootstrapApplication

Desligar a execução instantânea elimina esse erro. Vamos esperar por com.android.tools.build:gradle:2.0.0-alpha7 ...

Editar 25/01/16

'com.android.tools.build:gradle:2.0.0-alpha7' foi lançado há dois dias.

Obtendo a mesma exceção de 2.0.0-alpha6

Emanuel Moecklin
fonte
2
bem, acho que isso derrotou todo o ponto da minha atualização esta manhã: - /
bkurzius
2
Pareço passar mais e mais tempo lutando contra o sistema de compilação. É como se o desenvolvimento do Android se tornasse cada vez mais orientado para compilação / implantação e menos codificação ... É uma pena, porque gosto da flexibilidade do sistema de compilação do Gradle.
Emanuel Moecklin
1
bem, se eles conseguissem executar uma corrida instantânea, valeria a pena, mas até agora minha experiência com isso não tem sido boa :-(
bkurzius
Mesmo em outros aplicativos que funcionam com execução instantânea, tive que desligá-lo. Há muitos casos em que a execução instantânea simplesmente não funciona. Ainda alfa, eu acho ...
Emanuel Moecklin
Obrigado .. Eu estava recebendo isso na versão 2.3.1 estável
shadygoneinsane
161

Basta excluir a build pasta do appmódulo e reconstruir o projeto!

Isso vai resolver o problema!

AskQ
fonte
2
Ótimo! Isso deve ser marcado como a solução correta. Obrigado
Hernan Arber
1
Funcionou! Apenas reconstruir e reiniciar o AVD não ajudou!
MatejC
1
Não deveria "invalidar caches e reiniciar" também invalidar a compilação? Porque claramente não funciona neste caso
GabrielOshiro
Desativar não é a forma preferida. Não há necessidade de deletar a pasta 'build'. Apenas reconstrua o projeto.
Vaibhav
48

Encontrei esse problema depois de refatorar e alterar o nome do aplicativo no gradle. Seguindo o exemplo de AskQ, reconstruí o projeto (seguindo um caminho ligeiramente diferente):

Build-> Clean Project

Seguido por

Build-> Rebuild Project

Resolveu o problema

Tony Gil
fonte
11

Recuperação:

Excluir a pasta (projectFolder) / app / build e reconstruir funcionou para mim. (conforme respondido por @AskQ)

Eu me pergunto se Build> Clean Project teria funcionado também; nos menus da GUI do Android Studio.

Evitar:

No meu caso o problema parece ter ocorrido porque eu tinha copiado e colado um projeto, então 2 projetos tinham o mesmo nome.
Existem outras causas também, aprender o que elas são pode ajudar os usuários a evitar essa preocupação.

Brian Davis
fonte
Eu tive o mesmo erro e depois de Clean Projekt o aplicativo funcionou novamente
Franzi
Uma limpeza / reconstrução completa funcionou para mim também. Reiniciou o dispositivo conectado no meio para uma boa medida.
Majestic12
3

Isso pode acontecer porque o nome do seu pacote está em maiúsculas, então você deve alterá-lo de volta para minúsculas.

Raja Nurfarahin Farhanah
fonte
2

Android studio 2.3.3 Funcionou para mim depois de desativar o Instant run nas configurações ...

Vá para Configurações -> Compilar, Execução e Desenvolvimento -> Instant Run -> Desmarque Habilitar Instant Run para hotswap e limpar o projeto e reconstruir seu projeto novamente !!

Suhas
fonte
Desativar o Instant run nas configurações também funcionou para mim.
Michael Nwanna,