title: android app won't start when implementing interface from jar
body: <p>I am new Android development and to Eclipse, which is what I am using to make my app. At the moment I have my main activity which doesn't have much on it - it just has three button. Leaving it like that the app starts up fine in the emulator. </p>
  
  <p>I have also included a (JAR) library that I wrote into the project and I am wanting the main activity to implement an interface from it but when I do so the app crashes.</p>
  
  <p>This is what I get from LogCat:</p>
  
  <pre><code>03-26 05:54:56.211: E/AndroidRuntime(823): FATAL EXCEPTION: main
  03-26 05:54:56.211: E/AndroidRuntime(823): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.abc/com.example.abc.MainActivity}: java.lang.ClassNotFoundException: Didn't find class "com.example.abc.MainActivity" on path: /data/app/com.example.abc-2.apk
  03-26 05:54:56.211: E/AndroidRuntime(823):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2106)
  03-26 05:54:56.211: E/AndroidRuntime(823):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
  03-26 05:54:56.211: E/AndroidRuntime(823):  at android.app.ActivityThread.access$600(ActivityThread.java:141)
  03-26 05:54:56.211: E/AndroidRuntime(823):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
  03-26 05:54:56.211: E/AndroidRuntime(823):  at android.os.Handler.dispatchMessage(Handler.java:99)
  03-26 05:54:56.211: E/AndroidRuntime(823):  at android.os.Looper.loop(Looper.java:137)
  03-26 05:54:56.211: E/AndroidRuntime(823):  at android.app.ActivityThread.main(ActivityThread.java:5041)
  03-26 05:54:56.211: E/AndroidRuntime(823):  at java.lang.reflect.Method.invokeNative(Native Method)
  03-26 05:54:56.211: E/AndroidRuntime(823):  at java.lang.reflect.Method.invoke(Method.java:511)
  03-26 05:54:56.211: E/AndroidRuntime(823):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
  03-26 05:54:56.211: E/AndroidRuntime(823):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
  03-26 05:54:56.211: E/AndroidRuntime(823):  at dalvik.system.NativeStart.main(Native Method)
  03-26 05:54:56.211: E/AndroidRuntime(823): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.example.abc.MainActivity" on path: /data/app/com.example.abc-2.apk
  03-26 05:54:56.211: E/AndroidRuntime(823):  at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:65)
  03-26 05:54:56.211: E/AndroidRuntime(823):  at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
  03-26 05:54:56.211: E/AndroidRuntime(823):  at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
  03-26 05:54:56.211: E/AndroidRuntime(823):  at android.app.Instrumentation.newActivity(Instrumentation.java:1054)
  03-26 05:54:56.211: E/AndroidRuntime(823):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2097)
  03-26 05:54:56.211: E/AndroidRuntime(823):  ...  11 more
  </code></pre>
  
  <p>Manifest:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.example.abc"
      android:versionCode="1"
      android:versionName="1.0" &gt;
  
      &lt;uses-sdk
          android:minSdkVersion="8"
          android:targetSdkVersion="17" /&gt;
  
      &lt;application
          android:allowBackup="true"
          android:icon="@drawable/ic_launcher"
          android:label="@string/app_name"
          android:theme="@style/AppTheme" &gt;
          &lt;activity
              android:name="com.example.abc.MainActivity"
              android:label="@string/app_name" &gt;
              &lt;intent-filter&gt;
                  &lt;action android:name="android.intent.action.MAIN" /&gt;
  
                  &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
              &lt;/intent-filter&gt;
          &lt;/activity&gt;        
      &lt;/application&gt;
  &lt;/manifest&gt;
  </code></pre>
  
  <p>Activity:</p>
  
  <pre><code>import java.math.BigDecimal;
  import java.util.List;
  import BudgetEngine.BudgetEventHandler;
  import BudgetEngine.BudgetItem;
  import BudgetEngine.BudgetView;
  import BudgetEngine.ExpenseGroup;
  import android.os.Bundle;
  import android.app.Activity;
  import android.view.Menu;
  
  
  public class MainActivity extends Activity implements BudgetView {
  
      public final static String MESSAGE = "com.example.abc.MESSAGE";
  
      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_main);
      }
  
  
      @Override
      public boolean onCreateOptionsMenu(Menu menu) {
          // Inflate the menu; this adds items to the action bar if it is present.
          getMenuInflater().inflate(R.menu.main, menu);
          return true;
      }
  
  
      @Override
      public void addBudgetEventHandler(BudgetEventHandler arg0) {
          // TODO Auto-generated method stub
  
      }
  
  
      @Override
      public void removeBudgetEventHandler(BudgetEventHandler arg0) {
          // TODO Auto-generated method stub
  
      }
  
  
      @Override
      public void setActualTotal(BigDecimal arg0) {
          // TODO Auto-generated method stub
  
      }
  
  
      @Override
      public void setBudgetTotal(BigDecimal arg0) {
          // TODO Auto-generated method stub
  
      }
  
  
      @Override
      public void setErrorMessage(String arg0) {
          // TODO Auto-generated method stub
  
      }
  
  
      @Override
      public void setExpenseGroups(List&lt;ExpenseGroup&gt; arg0) {
          // TODO Auto-generated method stub
  
      }
  
  
      @Override
      public void setIncomeItems(List&lt;BudgetItem&gt; arg0) {
          // TODO Auto-generated method stub
  
      } 
  }
  </code></pre>
  
  <p>Does anyone have any ideas what might be going wrong? </p>
  
  <p>Please let me know if you need any more information.</p>