Android dalvik.system.PathClassLoader中的ClassNotFoundException
我正在运行一个android应用程序,其中使用的是Android dalvik.system.PathClassLoader中的ClassNotFoundException,android,Android,我正在运行一个android应用程序,其中使用的是ActionBar,但来自Android2.2 我添加了两个外部jar文件作为支持库 android-support-v7-appcompact.jar android-support-v13.jar 但是当我在我的设备上运行这个示例时,我发现了以下运行时错误 java.lang.RuntimeException:无法实例化活动 ComponentInfo{com.example.android.navigationdrawerexample/c
ActionBar
,但来自Android2.2
我添加了两个外部jar文件作为支持库
<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文件的顺序
您不仅应该查看错误,还应该查看警告(eclipse logcat视图中的橙色文本)。Dalvik类加载之前,通常会有一些有趣的信息,说明为什么Dalvik无法加载类,比如一个超级类不存在。您是否有一个名为NavMainActivity的类?是的,这是一个主和启动器活动尝试清理您的项目,并且在Buildpath中最后加载两个库。您可以更改顺序,但我遇到同样的错误请先尝试gen然后是src,一旦为我更改了,请尝试在日志中的eclipsein中没有与此应用程序相关的警告?你确定你删除了所有的logcat过滤器吗?是的,在logcat中有一个写着
12-08 13:59:49.169:W/dalvikvm(12518):无法解析Lcom/example/android/navigationdrawerexample/NavMainActivity的超类;(18)
超类是ActionBarActivity
你知道了。为什么ActionBarActivity不在您的apk中?它来自我在构建路径中添加的android-support-v7-appcompact.jar
<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>