錯誤導入osmand項目時發生:在Windows 7上的錯誤的Android工作室:意外的頂級EXCEPTION
Error:Execution failed for task ':OsmAnd:preDexFreeLegacyArmv5Debug'.
com.android.ide.common.internal.LoggedErrorException:無法運行命令: E:\ Android \ sdk \ build-tools \ 21.1.2 \ dx.bat --dex --force-jumbo --output E:\ Android_test_projects \ Osmand-master2 \ Osmand-master \ OsmAnd \ build \ intermediates \ pre -dismand-freeedgacyarmv5 \ debug \ OsmAnd-java-android-9c283cd307dbfef07359ccbde68a116b21ff0b4f.jar E:\ Android_test_projects \ Osmand-master2 \ Osmand-master \ OsmAnd-java \ build \ libs \ OsmAnd -java-android.jar 錯誤代碼:輸出: 意外的頂級例外: com.android.dx.cf.iface.ParseException:在com.android.dx.cf.direct.DirectClassFile中產生了錯誤的類文件magic(cafebabe)或版本(0034.0000) .parse0(DirectClassFile.java:472) at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406) at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java :388) 在com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251) 在com.android.dx.command.dexer.Main.processClass(Main.java:704) 在玉米.android.dx.command.dexer.Main.processFileBytes(Main.java:673) at com.android.dx.command.dexer.Main.access $ 300(Main的.java:83) 在com.android.dx.command.dexer.Main $ 1.processFileBytes(Main.java:602) 在com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:284) 在com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:166) 在com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144) 在com.android。 dx.command.dexer.Main.processOne(Main.java:632) 在com.android.dx.command.dexer.Main.processAllFiles(Main.java:510) 在com.android.dx.command.dexer。 Main.runMonoDex(Main.java:280) 在com.android.dx.command.dexer.Main.run(Main.java:246) 在com.android.dx.command.dexer.Main.main(主。 java:215) at com.android.dx.command.Ma in.main(Main.java:106) ...解析com/google/protobuf/AbstractMessage $ 1.class 1錯誤;中止
上述錯誤的原因是java的1.8。將其更改爲1.7後,我得到這個運行時錯誤
2-11 10:28:55.160 26327-26327/net.osmand V/Zygote﹕ Switching descriptor 34 to /dev/null
02-11 10:28:55.160 26327-26327/net.osmand V/Zygote﹕ Switching descriptor 9 to /dev/null
02-11 10:28:55.160 26327-26327/net.osmand D/dalvikvm﹕ Late-enabling CheckJNI
02-11 10:28:55.200 26327-26327/net.osmand D/ActivityThread﹕ handleBindApplication:net.osmand
02-11 10:28:55.200 26327-26327/net.osmand D/ActivityThread﹕ setTargetHeapUtilization:0.75
02-11 10:28:55.200 26327-26327/net.osmand D/ActivityThread﹕ setTargetHeapMinFree:2097152
02-11 10:28:55.260 26327-26327/net.osmand I/net.osmand﹕ ResourceManager Tiles to load in memory : 162.0
02-11 10:28:55.350 26327-26327/net.osmand D/AndroidRuntime﹕ Shutting down VM
02-11 10:28:55.350 26327-26327/net.osmand W/dalvikvm﹕ threadid=1: thread exiting with uncaught exception (group=0x41653db8)
02-11 10:28:55.350 26327-26327/net.osmand E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: net.osmand, PID: 26327
java.lang.RuntimeException: Unable to create application net.osmand.plus.OsmandApplication: java.lang.IllegalStateException: java.lang.IllegalArgumentException: is == null
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4476)
at android.app.ActivityThread.access$1500(ActivityThread.java:144)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1265)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5146)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:796)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalStateException: java.lang.IllegalArgumentException: is == null
at net.osmand.router.RoutingConfiguration.getDefault(RoutingConfiguration.java:171)
at net.osmand.plus.helpers.AvoidSpecificRoads.getBuilder(AvoidSpecificRoads.java:44)
at net.osmand.plus.helpers.AvoidSpecificRoads.<init>(AvoidSpecificRoads.java:38)
at net.osmand.plus.OsmandApplication.onCreate(OsmandApplication.java:165)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1007)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4473)
at android.app.ActivityThread.access$1500(ActivityThread.java:144)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1265)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5146)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:796)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalArgumentException: is == null
at org.kxml2.io.KXmlParser.setInput(KXmlParser.java:1625)
at net.osmand.router.RoutingConfiguration.parseFromInputStream(RoutingConfiguration.java:184)
at net.osmand.router.RoutingConfiguration.getDefault(RoutingConfiguration.java:169)
at net.osmand.plus.helpers.AvoidSpecificRoads.getBuilder(AvoidSpecificRoads.java:44)
at net.osmand.plus.helpers.AvoidSpecificRoads.<init>(AvoidSpecificRoads.java:38)
at net.osmand.plus.OsmandApplication.onCreate(OsmandApplication.java:165)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1007)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4473)
at android.app.ActivityThread.access$1500(ActivityThread.java:144)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1265)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5146)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:796)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)
at dalvik.system.NativeStart.main(Native Method)
02-11 10:29:42.570 26327-26334/net.osmand D/dalvikvm﹕ null clazz in OP_INSTANCE_OF, single-stepping
02-11 10:33:27.190 26327-26327/net.osmand I/Process﹕ Sending signal. PID: 26327 SIG: 9
02-11 10:34:10.670 26873-26873/net.osmand D/ActivityThread﹕ handleBindApplication:net.osmand
02-11 10:34:10.670 26873-26873/net.osmand D/ActivityThread﹕ setTargetHeapUtilization:0.75
02-11 10:34:10.670 26873-26873/net.osmand D/ActivityThread﹕ setTargetHeapMinFree:2097152
02-11 10:34:10.740 26873-26873/net.osmand I/net.osmand﹕ ResourceManager Tiles to load in memory : 162.0
02-11 10:34:10.840 26873-26873/net.osmand D/AndroidRuntime﹕ Shutting down VM
02-11 10:34:10.840 26873-26873/net.osmand W/dalvikvm﹕ threadid=1: thread exiting with uncaught exception (group=0x41653db8)
02-11 10:34:10.840 26873-26873/net.osmand E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: net.osmand, PID: 26873
java.lang.RuntimeException: Unable to create application net.osmand.plus.OsmandApplication: java.lang.IllegalStateException: java.lang.IllegalArgumentException: is == null
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4476)
at android.app.ActivityThread.access$1500(ActivityThread.java:144)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1265)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5146)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:796)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalStateException: java.lang.IllegalArgumentException: is == null
at net.osmand.router.RoutingConfiguration.getDefault(RoutingConfiguration.java:171)
at net.osmand.plus.helpers.AvoidSpecificRoads.getBuilder(AvoidSpecificRoads.java:44)
at net.osmand.plus.helpers.AvoidSpecificRoads.<init>(AvoidSpecificRoads.java:38)
at net.osmand.plus.OsmandApplication.onCreate(OsmandApplication.java:165)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1007)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4473)
at android.app.ActivityThread.access$1500(ActivityThread.java:144)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1265)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5146)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:796)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalArgumentException: is == null
at org.kxml2.io.KXmlParser.setInput(KXmlParser.java:1625)
at net.osmand.router.RoutingConfiguration.parseFromInputStream(RoutingConfiguration.java:184)
at net.osmand.router.RoutingConfiguration.getDefault(RoutingConfiguration.java:169)
at net.osmand.plus.helpers.AvoidSpecificRoads.getBuilder(AvoidSpecificRoads.java:44)
at net.osmand.plus.helpers.AvoidSpecificRoads.<init>(AvoidSpecificRoads.java:38)
at net.osmand.plus.OsmandApplication.onCreate(OsmandApplication.java:165)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1007)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4473)
at android.app.ActivityThread.access$1500(ActivityThread.java:144)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1265)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5146)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:796)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)
at dalvik.system.NativeStart.main(Native Method)
02-11 10:34:58.010 26873-26880/net.osmand D/dalvikvm﹕ null clazz in OP_INSTANCE_OF, single-stepping
'cafebabe '是正確的魔法,但主版本34是指使用JDK 1.8編譯的類文件。 Android工具還不支持Java 8。 – 2015-02-10 19:58:07
是的,幫助。謝謝。我改變了Java到1.7內置錯誤已完成,但現在有運行時錯誤。 – 2015-02-11 05:11:01
由於資源「routing.xml」未正確嵌入(java資源,不是Android資源!),因此引發了運行時異常。你如何包含資源? – 2015-02-11 16:21:37