user1526671
user1526671

Reputation: 817

java.lang.NoClassDefFoundError in android

I updated the Sherlock action bar library to new version in my project. After compiling and running logcat shows NoClassDefFoundError.

I have checked the jar versions. I have added the jars in project libs folder. I also checked order and export tab in build path. I also tried clean and build. Still i am getting NoClassDefFoundError.

My LogCat is shown below

 E/AndroidRuntime(9699): java.lang.NoClassDefFoundError: com.mobiotics.tvbuddydemo.TVBuddyMainActivity
 E/AndroidRuntime(9699):    at com.mobiotics.tvbuddydemo.SplashScreen.onCreate(SplashScreen.java:54)
 E/AndroidRuntime(9699):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
 E/AndroidRuntime(9699):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1722)
 E/AndroidRuntime(9699):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1784)
 E/AndroidRuntime(9699):    at android.app.ActivityThread.access$1500(ActivityThread.java:123)
 E/AndroidRuntime(9699):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:939)
 E/AndroidRuntime(9699):    at android.os.Handler.dispatchMessage(Handler.java:99)
 E/AndroidRuntime(9699):    at android.os.Looper.loop(Looper.java:123)
 E/AndroidRuntime(9699):    at android.app.ActivityThread.main(ActivityThread.java:3839)
 E/AndroidRuntime(9699):    at java.lang.reflect.Method.invokeNative(Native Method)
 E/AndroidRuntime(9699):    at java.lang.reflect.Method.invoke(Method.java:507)
 E/AndroidRuntime(9699):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)
 E/AndroidRuntime(9699):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)
 E/AndroidRuntime(9699):    at dalvik.system.NativeStart.main(Native Method)

THE error line in splash screen

TVBuddyMainActivity.setSuccess(false);

i cant figure out the cause earlier working fine

My MAINFEST

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mobiotics.tvbuddydemo"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="8" 
    android:targetSdkVersion="15"
    />
<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" 
    android:theme="@style/MyTheme" 
    android:screenOrientation="portrait" 
    >
     <activity
        android:name=".SplashScreen"
        android:label="@string/app_name" 
        android:screenOrientation="portrait" 
         >
         <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
     </activity>
            <activity
        android:name=".TVBuddyMain"
        android:screenOrientation="portrait">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
      </activity>
    <activity
        android:name=".CustomSearch"
        android:screenOrientation="portrait" 
        >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
      </activity>

    <activity 
        android:name=".PackageBuilderActivity"
        android:screenOrientation="portrait" 
        >           
    </activity>
      <service
        android:name="com.mobiotics.tvbuddy.data.service.Droid_service"
        android:exported="false" />
</application>
        <uses-permission android:name="android.permission.CAMERA" android:required="false"/>    
    <uses-feature android:name="android.hardware.camera" android:required="false"/>
    <uses-feature android:name="android.hardware.camera.autofocus" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
</manifest>

Upvotes: 0

Views: 5114

Answers (2)

minhaz
minhaz

Reputation: 4233

com.mobiotics.tvbuddydemo.TVBuddyMainActivity is not declared in android manifest file.

you have declared android:name=".TVBuddyMain" whic is not needed.

furthermore accessing static method inside an activity is not good idea.

TVBuddyMainActivity.setSuccess(false)

pass that false value through intent.

Upvotes: 1

Rahul Rawat
Rahul Rawat

Reputation: 997

If you are using jar file. Do not add by "java Build path". Jar file should be in libs folder. if there is not libs folder create it and please put your jar file in libs folder. Then Right click on jar file and do build path and add to build path.

thank u

Upvotes: 1

Related Questions