从源代码管理还原后的ClassNotFoundException

时间:2013-12-14 21:24:57

标签: android android-studio

我刚刚从源代码管理中恢复了一个项目,而我最初尝试运行它却失败了。当我启动应用程序时,我收到以下错误

  

java.lang.RuntimeException:无法实例化应用程序   com.mb.android.MB3Application:java.lang.ClassNotFoundException:   在路径上没有找到“com.mb.android.MB3Application”类:   DexPathList [[zip文件   “/data/app/com.mb.android-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.mb.android-1,   / vendor / lib,/ system / lib]]

此项目在重新安装操作系统之前正在运行。

摘自我的清单。

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

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

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

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme"
    android:name=".MB3Application" >

    <meta-data
        android:name="android.app.default_searchable"
        android:value="com.mb.android.activities.mobile.SearchResultsActivity"/>

    <activity
        android:name=".activities.MainActivity"
        android:label="@string/title_activity_main" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

...
removed
...

</application>

</manifest>

MB3Application.java中的包声明

package com.mb.android;


public class MB3Application extends Application implements MediaPlayer.OnCompletionListener {
}

MainActivity.java中的包声明

package com.mb.android.activities;


public class MainActivity extends BaseMB3Activity implements ServerLocatedListener {
}

据我所知,一切都好。有没有人有任何想法,这个ClassNotFoundException来自哪里。此外,该项目正在使用Android Studio构建。

感谢。

编辑:回答以下答案。以下是我的库的设置方式。

项目中只有一个模块。这是它的库。我已右键单击它们并选择尽可能添加为库。

enter image description here

项目的外部库部分。

enter image description here

模块build.gradle依赖项

enter image description here

项目结构对话框中列出的依赖项

enter image description here

1 个答案:

答案 0 :(得分:0)

基本上是Java Build Path问题:

  • 检查您的'libs'文件夹中是否遗漏了.jar文件。
  • 检查项目构建路径。
  • 检查是否导出了需要导出的库。

Android Studio - Importing external Library/Jar