Vou por vocês a par do problema e quando ele ocorre.
- O projeto é dividido em:
ParallaxUnlimited
ParallaxUnlimited-android
ParallaxUnlimited-desktop
ParallaxUnlimited-html
- O projeto padrão roda normal e exibe a imagem de teste.
- Tenho o projeto ParallaxDB (Framework de persistencia), ao qual gero um arquivo parallaxdb.jar para ser acessado pelo projeto principal (Android/Desktop/HTML).
- Adiciono o parallaxdb.jar e o sqlite-jdbc-3.7.2.jar no projeto principal. Executo e TUDO continua funcionando corretamente.
[color=darkred]Agora vou gerar o erro[/color]:
Ao chamar uma classe que esta dentro do parallaxdb.jar (Util.getInstance()…) no projeto principal (ParallaxUnlimited), ele gera o import corretamente e nem da erro em tempo de compilação, funciona corretamente no ParallaxUnlimited-desktop, porém quando executo no ParallaxUnlimited-android, ele simplesmente não encontra a classe Util localizada no parallaxdb.jar.
Resolvi desinstalar o jdk7, para ver se em algum lugar ele não estaria indevidamente fazendo referencia (Sim eu olhei o properties de cada projeto), instalei o jdk 6 (Tenho somente ele na maquina agora), dei um clean em todos os projetos e regerei o parallaxdb.jar para re-adicionar na lib do ParallaxUnlimited.
Novamente no desktop funcionou perfeitamente, no Android ocorreu os seguintes erros:
Obs.: Só ter o jar na lib e adicionada ao projeto principal, não gera o erro, esse só ocorre quando, tenacoacessar uma classe dentro dele, e só ocorre em tempo de execução.
Erro 2:
Unable to execute dex: Java heap space
Java heap space
Erro 1: A mensagem abaixo ficou sendo enviada repetidamente.
[2012-11-24 19:50:34 - ParallaxUnlimited-android] Dx warning: Ignoring InnerClasses attribute for an anonymous inner class
(org.ibex.nestedvm.util.Sort$1) that doesn't come with an
associated EnclosingMethod attribute. This class was probably produced by a
compiler that did not target the modern .class file format. The recommended
solution is to recompile the class from source, using an up-to-date compiler
and without specifying any "-target" type options. The consequence of ignoring
this warning is that reflective operations on this class will incorrectly
indicate that it is *not* an inner class.