我遇到了一个非常烦人的问题。我制作了一个类文件,其中的内容与网上的演示文件相同。我复制-粘贴了它,重命名了它,并更改了包文件。现在的问题是,无论何时,假设我这样做:Intent intent = new Intent(MainActivity.this, ScreenSlide.class); startActivity(intent);
我指的就是ScreenSlide.class。它给了我一个NoClassDefFoundError。我真的不知道该怎么解决它。我试着清理项目,但问题还是出现了。奇怪的是,我尝试了我的项目,以及我导入的库,部署在另一台pc上,猜猜发生了什么?没有错误!这真的令人沮丧。请帮帮我:(
listview.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// TODO Auto-generated method stub
String artist = (String) arg0.getItemAtPosition(arg2);
artist = artist.replace(' ', '+');
Intent intent = new Intent(MainActivity.this, ScreenSlide.class);
//intent.putExtra("artist", artist);
startActivity(intent);
}
});
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.fmpdroid.lastfmartists"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="11"
android:targetSdkVersion="17" />
<uses-permission android:name="android.permission.INTERNET"/>
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.fmpdroid.lastfmartists.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.fmpdroid.lastfmartists.Second"
android:label="@string/app_name" >
</activity>
<activity
android:name="com.fmpdroid.lastfmartists.ScreenSlide"
android:label="@string/app_name" >
</activity>
<activity
android:name="com.fmpdroid.lastfmartists.ScreenSlidePageFragment"
android:label="@string/app_name" >
</activity>
</application>
</manifest>发布于 2014-03-24 21:05:01
编译代码后,程序中每个类的.class文件就结束了。这些二进制文件是Java解释以执行程序的字节码。NoClassDefFoundError指示负责动态加载类的类加载器找不到您试图使用的类的.class文件。它可能表明您在执行代码时没有设置类路径选项。This link解释了如何在执行时设置类路径。
https://stackoverflow.com/questions/22610146
复制相似问题