NoClassDefFoundError con Mapsforge 0.4.0 y Eclipse
Estoy tratando de agregar una vista de mapa a mi aplicación usando Mapsforge. He hecho lo siguiente:
Descarga archivos jar y los coloca en ellibs/
carpetamapsforge-core-0.4.0.jarmapsforge-map-0.4.0.jarmapsforge-map-android-0.4.0.jarmapsforge-map-reader-0.4.0.jarArchivo con el botón derecho y seleccionadoBuild Path> Agregar a Build Path.EnPropiedades del proyecto, marcó los cuatro frascos como exportados.Sin embargo, cuando ejecuto mi aplicación, se bloquea en la primera llamada a una clase desde la biblioteca:
E/AndroidRuntime(21265): java.lang.NoClassDefFoundError: org.mapsforge.map.android.graphics.AndroidGraphicFactory
Las herramientas de Android SDK son todas anteriores a la versión 17. No hay Maven involucrado.
He estado buscando una respuesta, pero fue en vano. Intenté subir los frascos en la lista, limpiar el proyecto; esto y las cosas que hice ya son la esencia de lo que se sugiere en la red. Nada ayudó
Cuando examino el contenido de bin / dexedLibs, noto que se crearon frascos para mapsforge pero están prácticamente vacíos, excepto por el archivo de manifiesto y (en el caso del frasco de mapas) los recursos de osmarender. Notablemente,el archivo classes.dex está ausente. La biblioteca de soporte de Android en esa carpeta contiene un archivo classes.dex.
¿Alguna pista?
EDITAR: Examiné los archivos jar originales. Al mirar los archivos .class, noté que cada uno de ellos comienza conCA FE BA BE 00 00 00 33
, es decir, está en formato Java 7.
Según parte de la información que encontré en la red, Java 7 no es compatible con Android SDK. ¿Sigue siendo el caso? Esto explicaría por qué nada funciona, pero me haría preguntarme por qué los desarrolladores de Mapsforge usarían Java 7 para compilar un jar que se utilizará con Android ...