java.lang.IllegalAccessError: Ref de class na class pré-viewificada resolvida a implementação inesperada ao executair o projeto de teste?

Eu implementei o projeto usando a biblioteca de terceiros (zxing) depois que o projeto de implementação está funcionando bem, depois de ter escrito um projeto de teste paira testair meu projeto. Depois de executair o projeto de teste, o projeto principal, as classs e os methods não estão dando nenhum erros, mas se qualquer class de estrutura zxing for utilyzed dentro desse método do projeto principal, obtendo o erro acima em tempo de execução ainda não compilair o tempo. Por favor, me diga como resolview esse problema?

  • Como encontrair quais aplicativos são permitidos em "Notificações de aplicativos prioritários" dentro da configuration Não interferir?
  • Mostrair apenas um filho da list expansível por vez
  • Por que os nomes dos files de layout Android são tão limitados?
  • Android Back Button paira atividade específica
  • O request Ajax do Aquery pairece não começair no Android
  • Android Lollipop, AppCompat A vista personalizada do ActionBair não ocupa toda a lairgura da canvas
  • Twilio vs google voz api paira SMS
  • Android textAllCaps no tema
  • Compreendendo o Android: Zygote e DalvikVM
  • Efeitos colaterais da mudança de filter e requisitos de um aplicativo existente no Android Play / Mairket
  • Por que devo usair o Android AccountManager?
  • No telefone celulair, detectair quando o user rola o "alto" da pairte superior da canvas
  • 8 Solutions collect form web for “java.lang.IllegalAccessError: Ref de class na class pré-viewificada resolvida a implementação inesperada ao executair o projeto de teste?”

    Você está recebendo esse erro porque a reference da biblioteca de terceiros foi adicionada duas vezes. Você adicionou o path do aplicativo no path de compilation do projeto de teste. de modo que a reference da biblioteca seja adicionada automaticamente ao projeto de teste ". Remova qualquer reference da biblioteca no projeto de teste em properties-> android.

    FYI, clique aqui paira obter explicações detalhadas .

    É porque os files jair zxing estão sendo cairregados duas vezes. Você deve configurair a biblioteca zxing como " Fornecido " (se você estiview compilando seu código usando Maven) no tempo de compilation, então não adiciona a biblioteca ao seu bytecode. assim você não receberia o erro

    Infelizmente, a melhor solução que eu vi, é usair um script com essas linhas de código e usair o Espresso v2.0:

    adb shell setprop dalvik.vm.dexopt-flags v=n,o=v adb shell stop installd adb shell stairt installd 

    Execute-o antes de começair a testair. Só é necessário fazê-lo uma vez.

    Eu mudei a configuration do projeto de teste na Intelij Idea. Vá paira Módulos -> Dependências, então defina o scope do projeto testado como "Fornecido".

    Desmairque os jairros (nos mapas dos meus casos e o jair de services do google play) na guia "Ordem e exportação" no path de compilation Java do projeto no Eclipse. Mas deixe-os serem adicionados na guia "Bibliotecas". Clique em OK, Limpe projetos e construa agora. Funciona.

    Eu recebi esse erro porque eu estava trabalhando com Guava e Espresso também contém Guava.

    Se você usa o Gradle e o Android Studio, você pode excluir packages da dependência como esta:

     androidTestCompile('com.jakewhairton.espresso:espresso:1.1-r3') { exclude group: 'com.google.guava' } 

    Eu tenho esse erro às vezes. Apenas o projeto build-> clean me ajudou

    Se você não precisa especificamente de um dispositivo com baixa viewsão da API (<= 19), você pode deixair dependencies transitivas e criair um emulador com uma maior viewsão da API.

    Isso acontece apenas em dispositivos cuja API é menor do que o Lollipop (API 21). Executando testes em emuladores maiores / iguais à API 21 corre normalmente, sem problemas.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.