2011-06-06 10 views
7

Mi proyecto de Android tiene algunas bibliotecas de jar como dependencias. Solo, compila y funciona bien. escribí un pequeño proyecto de prueba, pero ejecutarlo no consigo ningún resultado (no hay pruebas superado o no) ni ningún error, pero en la salida del Logcat hay advertencias como esta:Probando el proyecto de Android con dependencias de jar

 
06-06 14:55:43.533: INFO/dalvikvm(7049): Failed resolving Lcom/adwhirl/adapters/InMobiAdapter; interface 315 'Lcom/inmobi/androidsdk/InMobiAdDelegate;' 
06-06 14:55:43.533: WARN/dalvikvm(7049): Link of class 'Lcom/adwhirl/adapters/InMobiAdapter;' failed 
06-06 14:55:43.533: INFO/dalvikvm(7049): Failed resolving Lcom/adwhirl/adapters/InMobiAdapter; interface 407 'Lcom/inmobi/androidsdk/InMobiAdDelegate;' 
06-06 14:55:43.533: WARN/dalvikvm(7049): Link of class 'Lcom/adwhirl/adapters/InMobiAdapter;' failed 
06-06 14:55:43.553: DEBUG/dalvikvm(7049): GC_CONCURRENT freed 471K, 51% free 2880K/5831K, external 0K/0K, paused 2ms+4ms 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049): Cannot load class. Make sure it is in your apk. Class name: 'com.adwhirl.adapters.InMobiAdapter'. Message: com.adwhirl.adapters.InMobiAdapter 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049): java.lang.ClassNotFoundException: com.adwhirl.adapters.InMobiAdapter 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at java.lang.Class.classForName(Native Method) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at java.lang.Class.forName(Class.java:234) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.test.ClassPathPackageInfoSource.createPackageInfo(ClassPathPackageInfoSource.java:89) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.test.ClassPathPackageInfoSource.access$000(ClassPathPackageInfoSource.java:40) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.test.ClassPathPackageInfoSource$1.load(ClassPathPackageInfoSource.java:51) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.test.ClassPathPackageInfoSource$1.load(ClassPathPackageInfoSource.java:48) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.test.SimpleCache.get(SimpleCache.java:31) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.test.ClassPathPackageInfoSource.getPackageInfo(ClassPathPackageInfoSource.java:73) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.test.ClassPathPackageInfo.getSubpackages(ClassPathPackageInfo.java:48) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.test.ClassPathPackageInfo.addTopLevelClassesTo(ClassPathPackageInfo.java:61) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.test.ClassPathPackageInfo.getTopLevelClassesRecursive(ClassPathPackageInfo.java:55) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.test.suitebuilder.TestGrouping.testCaseClassesInPackage(TestGrouping.java:154) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.test.suitebuilder.TestGrouping.addPackagesRecursive(TestGrouping.java:115) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.test.suitebuilder.TestSuiteBuilder.includePackages(TestSuiteBuilder.java:103) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.test.InstrumentationTestRunner.onCreate(InstrumentationTestRunner.java:360) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.app.ActivityThread.handleBindApplication(ActivityThread.java:3398) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.app.ActivityThread.access$2200(ActivityThread.java:123) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:977) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.os.Handler.dispatchMessage(Handler.java:99) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.os.Looper.loop(Looper.java:130) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at android.app.ActivityThread.main(ActivityThread.java:3835) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at java.lang.reflect.Method.invokeNative(Native Method) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at java.lang.reflect.Method.invoke(Method.java:507) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:847) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at dalvik.system.NativeStart.main(Native Method) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049): Caused by: java.lang.NoClassDefFoundError: com.adwhirl.adapters.InMobiAdapter 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  ... 26 more 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049): Caused by: java.lang.ClassNotFoundException: com.adwhirl.adapters.InMobiAdapter in loader dalvik.system.PathClassLoader[/system/framework/android.test.runner.jar:/data/app/com.mypackage.test-1.apk:/data/app/com.mypackage-2.apk] 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at java.lang.ClassLoader.loadClass(ClassLoader.java:551) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  at java.lang.ClassLoader.loadClass(ClassLoader.java:511) 
06-06 14:55:43.553: WARN/ClassPathPackageInfoSource(7049):  ... 26 more 

Como se puede ver parece que hay un problema al exportar las bibliotecas, de hecho recibo un error como ese para cada biblioteca. Leí in this blog post que para que funcione, debería ser suficiente para exportar todas las bibliotecas en el proyecto principal, pero para mí no funcionó. ¿Alguna otra idea?

+0

¿Alguna vez una solución para esto? Probé las soluciones/blog sugeridos también, pero todavía no tuve éxito. – dispake

+0

La solución sugerida tampoco funciona para mí. En caso de que importe, mi biblioteca faltante depende de una biblioteca nativa (que se cargue sin problemas en mi proyecto principal) – xverges

Respuesta

16

Vaya a su proyecto que use archivos .jar (es decir, proyecto bajo prueba). Haga clic en el botón derecho -> Propiedades-> Vía de construcción Java -> Orden y la exportación -> comprobar bibliotecas allí

enter image description here

+0

Como dije en la primera publicación, ya lo hago pero nada ha cambiado ... – rciovati

+0

Estoy teniendo el mismo problema al usar Maven. ¿Que necesito hacer? – JohnyTex

2

lo que funcionó para mí fue - en la sección 'Importar Orden y' traer mi archivo jar hasta

Cuestiones relacionadas