原因:java.lang.NoClassDefFoundError:使用引导类加载程序找不到类;没有可用的堆栈

原因:java.lang.NoClassDefFoundError:使用引导类加载程序找不到类;没有可用的堆栈,java,android,eclipse,google-play,classnotfoundexception,Java,Android,Eclipse,Google Play,Classnotfoundexception,我有android应用程序。当我在eclipse上运行或调试应用程序时,它与 没有错误,没有警告。然后我得到了谷歌游戏的apk。当用户从Google play market下载该软件时,会出现以下错误。请帮助我,我无法解决这个问题。它找不到一些类 这是从开发人员控制台获取的错误 java.lang.NoClassDefFoundError: Failed resolution of: Lcom/versus/hit/yeni/JSONParser; at com.versus.hit.y

我有android应用程序。当我在eclipse上运行或调试应用程序时,它与 没有错误,没有警告。然后我得到了谷歌游戏的apk。当用户从Google play market下载该软件时,会出现以下错误。请帮助我,我无法解决这个问题。它找不到一些类

这是从开发人员控制台获取的错误

java.lang.NoClassDefFoundError: Failed resolution of: Lcom/versus/hit/yeni/JSONParser;
    at com.versus.hit.yeni.Signin$CheckUser.<init>(Signin.java:211)
    at com.versus.hit.yeni.Signin$2.onClick(Signin.java:121)
    at android.view.View.performClick(View.java:4785)
    at android.view.View$PerformClick.run(View.java:19858)
    at android.os.Handler.handleCallback(Handler.java:739)
    at android.os.Handler.dispatchMessage(Handler.java:95)
    at android.os.Looper.loop(Looper.java:155)
    at android.app.ActivityThread.main(ActivityThread.java:5696)
    at java.lang.reflect.Method.invoke(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:372)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1028)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.versus.hit.yeni.JSONParser" on path: DexPathList[[zip file "/data/app/com.versus.hit.yeni-1/base.apk"],nativeLibraryDirectories=[/system/lib, /vendor/lib, system/vendor/lib, system/vendor/lib/egl, system/lib/hw]]
    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
    ... 12 more
    Suppressed: java.lang.ClassNotFoundException: com.versus.hit.yeni.JSONParser
        at java.lang.Class.classForName(Native Method)
        at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
        at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
        ... 13 more
Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available


这是我的清单

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.versus.hit.yeni"
android:versionCode="5"
android:versionName="1.2.2" >

<uses-sdk
    android:minSdkVersion="11"
    android:targetSdkVersion="22" />

 <uses-permission android:name="android.permission.INTERNET"/>
      <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
      <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
         <uses-permission android:name="android.permission.GET_ACCOUNTS" />
         <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
         <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >


          <activity android:name="com.versus.hit.yeni.SplashActivity"
        android:windowSoftInputMode="adjustPan"
        android:screenOrientation="portrait"
         android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
           <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />

        </intent-filter>


             <intent-filter>
                  <action android:name="com.versus.hit.yeni.MY_ACTION" />
                    <action android:name="android.intent.action.VIEW" />
                  <category android:name="android.intent.category.DEFAULT" />
                  <category android:name="android.intent.category.BROWSABLE" />

                 <data  android:scheme="versus" android:host="www.versushit.com" />


              </intent-filter>


    </activity>


    <activity android:name="com.versus.hit.yeni.MainActivity"
        android:windowSoftInputMode="adjustPan"
        android:screenOrientation="portrait"
           android:theme="@style/Theme.Sherlock.Light.DarkActionBar" >


    </activity>
    <activity android:name="com.versus.hit.yeni.SearchActivity"

           android:theme="@style/ACPLDialog" >

    </activity>
    <activity android:name="com.versus.hit.yeni.PersonalPage"

        android:windowSoftInputMode="adjustPan"
           android:theme="@style/Theme.Sherlock.Light.DarkActionBar" >

    </activity>
     <activity android:name="com.versus.hit.yeni.FollowActivity"
           android:theme="@style/ACPLDialog" >

    </activity>


      <activity
        android:name="com.versus.hit.yeni.ReportActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.REPORT" />

            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>

    </activity>


        <activity
        android:name="com.versus.hit.yeni.MailSender"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIL" />

            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>

    </activity>



     <activity
        android:name=".FacebookLoginActivity"
          android:screenOrientation="portrait"
        android:theme="@android:style/Theme.Translucent.NoTitleBar" />
    <activity
        android:name="com.facebook.LoginActivity"
        android:label="@string/app_name"
        android:theme="@android:style/Theme.Translucent.NoTitleBar" />




    <meta-data
        android:name="com.facebook.sdk.ApplicationId"
        android:value="@string/appid" />

</application>


请以正确的方式链接您的库,您的库不是用应用程序编译的,如果您使用的是第三方库,请确保在链接它们时将它们复制到项目中。链接库的屏幕截图会有更多帮助

另一方面,请尝试迁移到Android Studio,它在处理库方面比Eclipse好得多。

它是这样说的-

java.lang.ClassNotFoundException: Didn't find class "com.versus.hit.yeni.ACProgressFlower$Builder"
检查您正在调用的是它是否存在于同一路径的bin文件夹中,如果不尝试再次添加与
@ahmad said
相同的库,或者清理项目并再次运行。
NoClassDefFoundError
表示类加载器无法找到您试图使用的类的.Class文件。

我通过更改

classpath 'com.android.tools.build:gradle:2.0.0-beta2'

在build.gradle文件中。我不知道这为什么解决了这个问题。这可能是测试版中的一个bug

  • 卸载应用程序

  • 重新启动手机

  • 重新安装应用程序


  • 我也面临类似的问题

    在我的情况下,它是因为即时运行而发生的,只需禁用它

    后藤:


    Android Studio-->文件-->设置-->生成、执行、部署-->即时运行。

    从项目文件夹中删除临时.gradle文件夹。

    在我的情况下,这种情况发生是因为我移动了项目位置。
    我删除主模块的“.gradle”包,然后解决问题。

    如果您在项目中没有做任何事情,但发现了这个问题,您可以尝试一下。Android对我来说是新的,所以当我收到这个问题时,我会清除所有由Android studio自动生成的文件,包括
    .gradle
    .build
    等等。它起作用了!享受你的编码

    看起来您在release buildTypes的gradle文件中有
    minifyEnabled true
    ,在debug中有
    minifyEnabled false

    如果是,请尝试在proguard-rules.pro文件中添加:

  • -保持类com.vs.hit.yeni.ACProgressFlower$Builder
  • -保持类com.vs.hit.yeni.JSONParser

  • 我没有看到任何所谓的“即时跑步”选项!!我在哪里看到这个选项?您使用的是哪个版本的Android studio?
    java.lang.ClassNotFoundException: Didn't find class "com.versus.hit.yeni.ACProgressFlower$Builder"
    
    classpath 'com.android.tools.build:gradle:2.0.0-beta2'
    
    classpath 'com.android.tools.build:gradle:1.3.0'