2012-07-19 94 views
3

在我家的活动之一,我使用一个线程,并意图以我自己的类中的一种:java.lang.NoClassDefFoundError,在我自己的类

public class AppHome extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
     /* some initialisations */ 
     Thread initThread = new Thread() { 

      @Override 
    public void run() { 
     try { 
      super.run(); 
      /* some treatment */ 
      lanchNextActivity(nextActivity); 
     } 
    }; 
    initThread.start(); 
    } 

private void lanchNextActivity(String activity){ 

    Intent intent = new Intent(context, ZonesActivity.class); 
    startActivity(intent); 
} 
} 

它崩溃我ZonesActivity.class蒙山的以下消息

threadid=12: thread exiting with uncaught exception (group=0x40a13300) 
FATAL EXCEPTION: Thread-120 
java.lang.NoClassDefFoundError: com.dombox.app.activity.ZonesActivity 
    at com.dombox.app.activity.DomboxHome.lanchNextActivity(DomboxHome.java:309) 
    at com.dombox.app.activity.DomboxHome.access$1(DomboxHome.java:291) 
    at com.dombox.app.activity.DomboxHome$1.run(DomboxHome.java:276) 

AppHome.java:309是Intent的创建。

而且我的课ZonesActivity是女仆由我:

package com.dombox.app.activity; 

public class ZonesActivity extends FragmentActivity { /* ... */ } 

我想的是我的类路径不对,但它似乎正常的对我说:

here is my classpath

而且我的清单:

<?xml version="1.0" encoding="utf-8"?> 
<manifest package="com.myapp.app" 
    android:versionCode="13" 
    android:versionName="2.1.1" xmlns:android="http://schemas.android.com/apk/res/android"> 

    <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="8"/> 

    <supports-screens android:largeScreens="true" 
     android:normalScreens="true" android:smallScreens="true" 
     android:anyDensity="true" /> 

    <permission android:name="com.myapp.app.permission.C2D_MESSAGE" 
     android:protectionLevel="signature" /> 

    <uses-permission android:name="android.permission.INTERNET" /> 

    <application 
     <uses-library android:name="android.test.runner" /> 

     <activity android:name=".activity.ZonesActivity"      
      android:label="@string/app_name"></activity> 

     <instrumentation 
      android:name="android.test.InstrumentationTestRunner" 
      android:label="Tests for Android MyApp" 
      android:targetPackage="com.application.androidmyapp" > 
     </instrumentation> 
    </application> 
</manifest> 

抱歉,清单非常大!

有没有人有想法?

+0

发布您的完整logcat..and清单文件 – 2012-07-19 15:29:24

+0

我把清单和完整的logcat。 – 2012-07-19 16:53:38

+0

你是怎么终于解决的?我面临同样的问题。 – 2012-12-27 14:22:51

回答

2

如果您使用了当前平台上不可用的任何API。 (例如,在旧手机上调用ICS API)。该系统会抛出这个颇具误导性的例外。