2012-07-19 35 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)。該系統會拋出這個頗具誤導性的例外。