2011-06-06 81 views
7

我的Android项目有几个jar库作为依赖关系。它独自编译并运行良好。 我写了一个小的测试项目,但运行它,我没有得到任何结果(没有测试通过或失败),也没有任何错误,但在logcat的输出也有类似的警告:使用jar依赖测试Android项目

 
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 

正如你所看到的似乎有导出库的问题,事实上,每个库都会出现这样的错误。 我读in this blog post为了让它起作用,它应该足以导出主项目中的所有库,但对我而言并不奏效。任何其他想法?

+0

你有没有得到一个解决方案?我尝试了建议的解决方案/博客,但仍然没有成功。 – dispake 2011-11-08 08:51:28

+0

建议的解决方案对我来说都不适用。万一它很重要,我的缺失库取决于本地库(在我的主要项目中完美加载) – xverges 2012-09-27 13:55:00

回答

16

转到使用.jar文件的项目(即被测项目)。点击鼠标右键 - >属性 - > Java构建路径 - >在线订单和出口 - >检查库有

enter image description here

+0

正如我在第一篇文章中所说,我已经这样做,但没有改变... – rciovati 2011-06-06 14:49:58

+0

我有使用Maven相同的问题。我需要做什么? – JohnyTex 2014-06-03 15:17:14

2

什么工作对我来说是 - 在“订单,并导入”部分,把我的JAR文件了

相关问题