Android错误:引起:java.lang.ClassNotFoundException

时间:2013-06-07 16:45:19

标签: android eclipse

我在Android开发方面非常新,这是我的第一个应用程序。我尝试在设备或模拟器上运行应用程序,我得到“不幸的是,应用程序名称已停止”。我相信错误始于“java.lang.ClassNotFoundException”。请有人告诉我如何解决这个问题。

这是我的清单文件

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.benchaful.newboard"
  android:versionCode="1"
  android:versionName="1.0">

<uses-sdk android:targetSdkVersion="17" android:minSdkVersion="7" />
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

<application android:allowBackup="true" android:icon="@drawable/icon"     android:label="@string/app_name">
    <activity android:name="com.benchaful.newBoard.MainActivity"
  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="com.google.ads.AdActivity" 
          android:configChanges="keyboard|keyboardHidden|orientation" />
</application>



</manifest>

我的主要布局文件

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/scrollview1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>

    <LinearLayout android:layout_width="fill_parent"
     android:id="@+id/home_layout"
     android:orientation="vertical"
     android:layout_height="wrap_content"
     android:background="#000000"
     >

这里的一些按钮

<WebView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/accesskey"
    android:layout_width="fill_parent"
    android:layout_height="100px"
/>


    </LinearLayout>
</ScrollView>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:orientation="vertical"
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:background="#ffffff"
              android:gravity="bottom"
              android:layout_alignParentBottom="true"
              android:layout_alignBottom="@+id/home_layout"
              >
            <com.google.ads.AdView  xmlns:ads="http://schemas.android.com/apk/libs/com.google.ads"
                                 android:id="@+id/adView"
                                 android:layout_width="wrap_content"
                                 android:layout_height="wrap_content"
                                 ads:adUnitId="a151a7cc8c54403"
                                 ads:adSize="BANNER"
                                 />
</LinearLayout>


</RelativeLayout>

这是我的LogCat

06-07 17:42:40.363: E/AndroidRuntime(11994): FATAL EXCEPTION: main
06-07 17:42:40.363: E/AndroidRuntime(11994): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.benchaful.newboard/com.benchaful.newBoard.MainActivity}: java.lang.ClassNotFoundException: com.benchaful.newBoard.MainActivity
06-07 17:42:40.363: E/AndroidRuntime(11994):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2045)
06-07 17:42:40.363: E/AndroidRuntime(11994):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2146)
06-07 17:42:40.363: E/AndroidRuntime(11994):    at android.app.ActivityThread.access$700(ActivityThread.java:140)
06-07 17:42:40.363: E/AndroidRuntime(11994):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1238)
06-07 17:42:40.363: E/AndroidRuntime(11994):    at android.os.Handler.dispatchMessage(Handler.java:99)
06-07 17:42:40.363: E/AndroidRuntime(11994):    at android.os.Looper.loop(Looper.java:137)
06-07 17:42:40.363: E/AndroidRuntime(11994):    at android.app.ActivityThread.main(ActivityThread.java:4944)
06-07 17:42:40.363: E/AndroidRuntime(11994):    at java.lang.reflect.Method.invokeNative(Native Method)
06-07 17:42:40.363: E/AndroidRuntime(11994):    at java.lang.reflect.Method.invoke(Method.java:511)
06-07 17:42:40.363: E/AndroidRuntime(11994):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
06-07 17:42:40.363: E/AndroidRuntime(11994):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
06-07 17:42:40.363: E/AndroidRuntime(11994):    at dalvik.system.NativeStart.main(Native Method)
06-07 17:42:40.363: E/AndroidRuntime(11994): Caused by: java.lang.ClassNotFoundException: com.benchaful.newBoard.MainActivity
06-07 17:42:40.363: E/AndroidRuntime(11994):    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61)
06-07 17:42:40.363: E/AndroidRuntime(11994):    at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
06-07 17:42:40.363: E/AndroidRuntime(11994):    at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
06-07 17:42:40.363: E/AndroidRuntime(11994):    at android.app.Instrumentation.newActivity(Instrumentation.java:1068)
06-07 17:42:40.363: E/AndroidRuntime(11994):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2036)

2 个答案:

答案 0 :(得分:1)

manifest中,主要包名为com.benchaful.newboard

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.benchaful.newboard"
  android:versionCode="1"
  android:versionName="1.0">

根据您Activity的声明,您有com.benchaful.newBoard B大写 ),我认为这只是一个语法错误当您点击包的名称时,您应该声明activity这样:

<activity android:name="com.benchaful.newboard.MainActivity"
  android:label="@string/app_name"
  android:screenOrientation="portrait">

或:

<activity android:name=".MainActivity"
  android:label="@string/app_name"
  android:screenOrientation="portrait">

答案 1 :(得分:0)

很抱歉,如果这很明显,但请确保您有一个名为MainActivity的课程,该课程会延长Activity

它的包名是com.benchaful.newBoard.MainActivity