Reputation: 3016
I updated my Android Studio to version 2.0. But I had a problem, I don't know why?
The important error info:
Unable to instantiate application com.android.tools.fd.runtime.BootstrapApplication: java.lang.IllegalStateException: java.lang.ClassNotFoundException: com.eallcn.rentagent.MyDebugEallApplication
I searched a long time, But I didn't find the right answer you can see the link
At the same time when I click File->Project structure It shows this error:
Is there any problem somewhere in the libs? When gradle build the program the libs didn't load completely for current program. Is there any problem with Android Studio version 2.0?
When I use Android studio 1.4.0 to build and run the program. It works fine for me! But when I use the Android Studio 2.0, the problem shows up!
Why? Could you help me, please?
Here is detailed error log:
11-28 11:57:00.489 19890-19890/com.eallcn.rentagent.debug E/AndroidRuntime: FATAL EXCEPTION: main Process: com.eallcn.rentagent.debug, PID: 19890 java.lang.RuntimeException: Unable to instantiate application com.android.tools.fd.runtime.BootstrapApplication: java.lang.IllegalStateException: java.lang.ClassNotFoundException: com.eallcn.rentagent.MyDebugEallApplication at android.app.LoadedApk.makeApplication(LoadedApk.java:537) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4586) at android.app.ActivityThread.access$1800(ActivityThread.java:139)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1316)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5314)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:864) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:680)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalStateException: java.lang.ClassNotFoundException: com.eallcn.rentagent.MyDebugEallApplication
at com.android.tools.fd.runtime.BootstrapApplication.createRealApplication(BootstrapApplication.java:167) at com.android.tools.fd.runtime.BootstrapApplication.attachBaseContext(BootstrapApplication.java:179) at android.app.Application.attach(Application.java:194)
at android.app.Instrumentation.newApplication(Instrumentation.java:992)
at android.app.Instrumentation.newApplication(Instrumentation.java:976)
at android.app.LoadedApk.makeApplication(LoadedApk.java:532)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4586) at android.app.ActivityThread.access$1800(ActivityThread.java:139) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1316) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:136) at android.app.ActivityThread.main(ActivityThread.java:5314) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:515) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:864) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:680) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.ClassNotFoundException: com.eallcn.rentagent.MyDebugEallApplication at java.lang.Class.classForName(Native Method) at java.lang.Class.forName(Class.java:251) at java.lang.Class.forName(Class.java:216) at com.android.tools.fd.runtime.BootstrapApplication.createRealApplication(BootstrapApplication.java:155) at com.android.tools.fd.runtime.BootstrapApplication.attachBaseContext(BootstrapApplication.java:179) at android.app.Application.attach(Application.java:194) at android.app.Instrumentation.newApplication(Instrumentation.java:992) at android.app.Instrumentation.newApplication(Instrumentation.java:976) at android.app.LoadedApk.makeApplication(LoadedApk.java:532) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4586) at android.app.ActivityThread.access$1800(ActivityThread.java:139) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1316) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:136) at android.app.ActivityThread.main(ActivityThread.java:5314) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:515) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:864) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:680) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.NoClassDefFoundError: com/eallcn/rentagent/MyDebugEallApplication at java.lang.Class.classForName(Native Method) at java.lang.Class.forName(Class.java:251) at java.lang.Class.forName(Class.java:216) at com.android.tools.fd.runtime.BootstrapApplication.createRealApplication(BootstrapApplication.java:155) at com.android.tools.fd.runtime.BootstrapApplication.attachBaseContext(BootstrapApplication.java:179) at android.app.Application.attach(Application.java:194) at android.app.Instrumentation.newApplication(Instrumentation.java:992) at android.app.Instrumentation.newApplication(Instrumentation.java:976) at android.app.LoadedApk.makeApplication(LoadedApk.java:532) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4586) at android.app.ActivityThread.access$1800(ActivityThread.java:139) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1316) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:136) at android.app.ActivityThread.main(ActivityThread.java:5314) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:515) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:864) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:680) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.ClassNotFoundException: Didn't find class "com.eallcn.rentagent.MyDebugEallApplication" on path: DexPathList[[zip file "/data/app/com.eallcn.rentagent.debug-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.eallcn.rentagent.debug-1, /vendor/lib, /system/lib, /data/datalib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) at java.lang.ClassLoader.loadClass(ClassLoader.java:497) at java.lang.ClassLoader.loadClass(ClassLoader.java:457) at java.lang.Class.classForName(Native Method) at java.lang.Class.forName(Class.java:251) at java.lang.Class.forName(Class.java:216) at com.android.tools.fd.runtime.BootstrapApplication.createRealApplication(BootstrapApplication.java:155) at com.android.tools.fd.runtime.BootstrapApplication.attachBaseContext(BootstrapApplication.java:179) at android.app.Application.attach(Application.java:194) at android.app.Instrumentation.newApplication(Instrumentation.java:992) at android.app.Instrumentation.newApplication(Instrumentation.java:976) at android.app.LoadedApk.makeApplication(LoadedApk.java:532) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4586) at android.app.ActivityThread.access$1800(ActivityThread.java:139) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1316) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:136) at android.app.ActivityThread.main(ActivityThread.java:5314) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:515) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:864) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:680) at dalvik.system.NativeStart.main(Native Method)
Upvotes: 140
Views: 68483
Reputation: 4131
No need to disable "instant run".
buildTypes { debug {minifyEnabled true
to false
(that looks like an error was in my proguard file)Sync, compile and run the app again.
Upvotes: 1
Reputation: 101
This error will happen when you add a blank activity with .java file. So to solve this error 1st you have to Build the project again. Then run it. Solved Thank You.
Upvotes: 1
Reputation: 1815
If you are sharing your app then another solution is
go to Android Studio --> Build --> Build APK
A pop up will come with APK generated successfully
. Show in Explorer
will get you to the generated apk folder.
Upvotes: 1
Reputation: 7828
I just needed to reboot my device. Tried everything else first unfortunately so wasted hours.
Upvotes: 1
Reputation: 126445
In some Android devices with versions before OS 5.0 we get the error message:
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.android.tools.fd.runtime.BootstrapApplication
We must disable "Instant Run".
Go to File
> Settings
> Built, Execution, Deployment
> Instant Run
Then disable the option Enable Instant Run to hot swap code.
Upvotes: 1
Reputation: 26814
I was able to get rid of this error by updating gradle-wrapper.properties to gradle-2.14.1-all
, and cleaning/rebuilding the project. Then it ran fine. No other changes were needed (as those suggested in the above answer)...
Upvotes: 5
Reputation: 2057
I also faced the same problem and i solved it. In my case it was due to a mistake in global class ( Throughout Application context class ) , my mistake was in AndroidManifest.xml
i have declared the Application class VolleyHelper
as :-
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true" android:name=".VolleyHelper"
android:theme="@style/AppTheme">
but in VolleyHelper.java
i don't have a Default constructor . So i added default constructor in VolleyHelper.java
( Application Class ) .
Upvotes: 2
Reputation: 4001
Just go to Android Studio menu - Build --> Rebuild Project.
Upvotes: 9
Reputation: 918
Change classpath 'com.android.tools.build:gradle:2.1.2'
to classpath 'com.android.tools.build:gradle:2.1.0'
fixes my problem.
Upvotes: 2
Reputation: 189
you can also add this into your gradle to prevent making dex on debug
debug {
// dev utilizes minSDKVersion = 21 to allow the Android gradle plugin
// to pre-dex each module and produce an APK that can be tested on
// Android Lollipop without time consuming dex merging processes.
minSdkVersion 21
}
Upvotes: 1
Reputation: 416
I had the same error.
I solved it by cleaning the project ( Build > Clean Project )
Upvotes: 18
Reputation: 3663
Disable the Instant Run option in Android Studio. Instructions are in the Android Studio Instant Run documentation.
Instant Run tries to do hot swapping of your code; this causes the application class to be moved.
To disable Instant Run Go to File --> Settings--> Build,Execution,Deployment -->Instant Run ---> uncheck "Enable instant run"
Upvotes: 313
Reputation: 472
I also got this error with Android 2.0 in stable channel.
What I did?
- I had an older version of the app already installed on the device (which was built using older version of the Studio) which I was trying to replace by running the newer app on device.
I just uninstalled the older version completely before running the new app and the trick worked.
Upvotes: 3
Reputation: 5899
If you don't want to disable Instant Run, just do a project clean and rerun.
Upvotes: 2
Reputation: 1818
Just for those who want to update classPath with latest gradle plugin version, Where to find latest plugin version?
Check in http://tools.android.com/tech-docs/new-build-system and update your classPath. Latest one at current is
classpath 'com.android.tools.build:gradle:2.0.0'.
Always try to build with latest plugin version.
Upvotes: 2
Reputation: 1307
I just update Android Studio to the last version (2.0 Beta 5). It changes itself to classpath 'com.android.tools.build:gradle:2.0.0-beta5'
and works like a charm.
Upvotes: -1
Reputation: 3495
Changing to
classpath 'com.android.tools.build:gradle:2.0.0-alpha6'
fixed issue
Upvotes: 4
Reputation: 575
I had the same error after trying to use the 2.0.
I solved it by reverting some gradle changes:
1/3:
Changing:
classpath 'com.android.tools.build:gradle:2.0.0-alpha1'
By:
classpath 'com.android.tools.build:gradle:1.2.3'
2/3:
Changing:
buildToolsVersion '23.0.2'
By:
buildToolsVersion "21.1.2"
3/3: (in <project folder>/.idea/gradle.xml
)
And:
<option name="gradleHome" value="$APPLICATION_HOME_DIR$/gradle/gradle-2.8" />
By:
<option name="gradleHome" value="$APPLICATION_HOME_DIR$/gradle/gradle-2.4" />
I don't know what line is exactly the origin of the error, but with this three changes it was solved.
Hope that it helps you :)
Upvotes: 22