dalvik.system.PathClassLoader中的ClassNotFoundException

时间:2013-12-08 08:04:41

标签: android

我正在运行一个Android应用程序,我在其中使用ActionBar,但是来自android 2.2支持的库

我添加了两个外部jar文件作为支持库

  1. 机器人支撑-V7-appcompact.jar
  2. 机器人支撑-v13.jar
  3. 但是当我在我的设备中运行示例时,我遇到了运行时错误

      

    java.lang.RuntimeException:无法实例化活动   ComponentInfo {com.example.android.navigationdrawerexample / com.example.android.navigationdrawerexample.NavMainActivity}:   抛出java.lang.ClassNotFoundException:   com.example.android.navigationdrawerexample.NavMainActivity in loader   dalvik.system.PathClassLoader [/data/app/com.example.android.navigationdrawerexample-1.apk]     在   android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2703)     在   android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2797)     在android.app.ActivityThread.access $ 2300(ActivityThread.java:135)     在   android.app.ActivityThread $ H.handleMessage(ActivityThread.java:2132)     在android.os.Handler.dispatchMessage(Handler.java:99)at   android.os.Looper.loop(Looper.java:143)at   android.app.ActivityThread.main(ActivityThread.java:4914)at   java.lang.reflect.Method.invokeNative(Native Method)at   java.lang.reflect.Method.invoke(Method.java:521)at   com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:858)     在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)at   dalvik.system.NativeStart.main(原生方法)

    Caused by: java.lang.ClassNotFoundException: com.example.android.navigationdrawerexample.NavMainActivity in loader dalvik.system.PathClassLoader[/data/app/com.example.android.navigationdrawerexample-1.apk]
        at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:573)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:532)
        at android.app.Instrumentation.newActivity(Instrumentation.java:1033)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2695)
    

    这是清单文件内容

    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.example.android.navigationdrawerexample"
        android:versionCode="1"
        android:versionName="1.0">
    
        <uses-sdk android:minSdkVersion="7"  />
    
        <application
            android:label="@string/app_name"
            android:icon="@drawable/ic_launcher"
            >
            <activity android:name="NavMainActivity">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN"/>
                    <category android:name="android.intent.category.LAUNCHER"/>
                </intent-filter>
            </activity>
    
        </application>
    
    </manifest>
    

    jar文件的顺序

    enter image description here

1 个答案:

答案 0 :(得分:0)

您不仅应该查看错误,还应该注意警告(eclipse logcat视图中的橙色文本颜色)。 Dalvik类加载之前通常会有一些有趣的信息,说明为什么Dalvik无法加载类,就像超类不存在一样。