アプリケーションcom.android.tools.fd.runtime.BootstrapApplicationをインスタンス化できませんか?Android


140

Android Studioをバージョン2.0に更新しました。しかし、私には問題がありました、なぜかわかりませんか?

重要なエラー情報:

アプリケーションcom.android.tools.fd.runtime.BootstrapApplicationをインスタンス化できません:java.lang.IllegalStateException:java.lang.ClassNotFoundException:com.eallcn.rentagent.MyDebugEallApplication

長い間検索してきましたが、リンクを見ると正しい答えが見つかりませんでした

同時に[ ファイル ]- > [プロジェクト構造 ]をクリックすると 、次のエラーが表示されます。

ここに画像の説明を入力してください

ライブラリのどこかに問題がありますか?Gradleがプログラムをビルドするときに、現在のプログラムではライブラリが完全にロードされませんでした。Android Studioバージョン2.0に問題はありますか?

Android Studio 1.4.0を使用してプログラムをビルドして実行すると、それは私にとってはうまくいきます!しかし、Android Studio 2.0を使用すると、問題が発生します。

どうして?私を手伝ってくれますか?

詳細なエラーログは次のとおりです。

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 instance an 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。 com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:864)の
java.lang.reflect.Method.invoke(Method.java:515)のreflect.Method.invokeNative(Native Method)
comの。
dalvik.system.NativeStart.main(Native Method )でandroid.internal.os.ZygoteInit.main(ZygoteInit.java:680)が
原因:java.lang.IllegalStateException:java.lang.ClassNotFoundException:com.eallcn.rentagent.MyDebugEallApplication
com.android.tools.fd.runtime.BootstrapApplication.attachBaseContext(BootstrapApplication.java:179)at android.app.Application.attachでcom.android.tools.fd.runtime.BootstrapApplication.createRealApplication(BootstrapApplication.java:167)で(Application.java:194)at
android.app.Instrumentation.newApplication(Instrumentation.java:992) at android.app.LoadedApk.makeApplication(LoadedApk.java: 532)
android.app.Instrumentation.newApplication(Instrumentation.java:976)で

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。com.android.internal.os。のjava.lang.reflect.Method.invoke(Method.java:515)のjava.lang.reflect.Method.invokeNative(Native Method)のActivityThread.main(ActivityThread.java:5314) ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:864)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:680)at dalvik.system.NativeStart。main(Native Method)原因: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)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)、android.os.Handler.dispatchMessage(Handler.java:102)、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)com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:864)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:680)dalvik.system.NativeStart.main(Native Method)の原因:java.lang.NoClassDefFoundError:com / eallcn / rentagent / MyDebugEallApplication at java.lang.Class.classForName(Native Method)at java.lang.Class.forName (Class.java:251)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)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)java.lang.reflect.Method.invokeNative(Native Method)at java.lang.reflect.Method.invoke(Method.java:515)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 (ネイティブメソッド)原因:java.lang.ClassNotFoundException:パスにクラス "com.eallcn.rentagent.MyDebugEallApplication"が見つかりませんでした: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 )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)android.app.ActivityThread.handleBindApplication(ActivityThread.java:4586)at android.app。android.os.Handler.dispatchMessage(Handler.java:102)のandroid.os.Looper。でandroid.app.ActivityThread $ H.handleMessage(ActivityThread.java:1316)のActivityThread.access $ 1800(ActivityThread.java:139) loop。(Looper.java:136)at android.app.ActivityThread.main(ActivityThread.java:5314)at java.lang.reflect.Method。com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:864)at com.android.internal。のjava.lang.reflect.Method.invoke(Method.java:515)のinvokeNative(Native Method) os.ZygoteInit.main(ZygoteInit.java:680)at dalvik.system.NativeStart.main(Native Method)515)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 (ネイティブメソッド)515)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 (ネイティブメソッド)680)dalvik.system.NativeStart.main(ネイティブメソッド)680)dalvik.system.NativeStart.main(ネイティブメソッド)

 


私はこの質問はそれだと思います:それはちょうどAndroid Studio 2.0についてであり、gradleバージョンは互換性がありません!
GeekHades 2015年

回答:


313

Android StudioのInstant Runオプションを無効にします。手順はAndroid Studio Instant Runのドキュメントにあります

Instant Runはコードのホットスワップを試みます。これにより、アプリケーションクラスが移動します。

インスタントランを無効にするには、[ファイルに移動]-> [設定]-> [ビルド、実行、展開]-> [インスタントラン] ---> [インスタントランを有効にする]をオフにします。


10
これはちょうどマシュマロデバイスで私に起こった
Jon

37
IDEのこの主要な機能無効にすることは良い解決策ではないと考えるのは私だけですか?これは、「スタジオ1.4を使用する」のようなものです。反対投票。
ナタリオ

17
@mvai:これは理想的なソリューションではありませんが、利用可能な最良のソリューションである可能性があります。問題の原因がInstant Runである場合は、そのことを知っており、時々それを無効にできることは非常に重要です。この回答をDownvotingは..あなたのために待ち伏せ待ち時間があったので、最短ルートの家を取らないことを言ったメッセンジャーを撃つようなものです
LarsH

3
@mvai:わかりました、これらのことは間違いなく答えを改善するために行うことができます(5つのうち4つは明白に見えます)。しかし、反対投票は「この回答の方が良いかもしれません」ではなく、「この回答は役に立たない」のです。一方、この回答は非常に役立ちます。答えを改善すると思われる詳細を自由に追加してください。ここまたはあなた自身の答えで。
LarsH 2016

2
これは悲しい答えですが、Instant Runは非常に壊れているため、これが唯一の正しい解決策です。
clu

22

2.0を使用しようとした後、同じエラーが発生しました。

私はいくつかのgradleの変更を元に戻すことで解決しました:

1/3:

変化:

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

沿って:

classpath 'com.android.tools.build:gradle:1.2.3'

2/3:

変化:

buildToolsVersion '23.0.2'

沿って:

buildToolsVersion "21.1.2"

3/3: (中<project folder>/.idea/gradle.xml

そして:

<option name="gradleHome" value="$APPLICATION_HOME_DIR$/gradle/gradle-2.8" />

沿って:

<option name="gradleHome" value="$APPLICATION_HOME_DIR$/gradle/gradle-2.4" />

どの行がエラーの原因なのかはわかりませんが、この3つの変更により解決されました。

それがあなたを助けることを願っています:)


3番目のステップ:<option name = "gradleHome" value = "$ APPLICATION_HOME_DIR $ / gradle / gradle-2.4" />どこで見つけることができますか、変更します。コードを見つけることができます!
GeekHades 2015年

こんにちは、編集された回答をご覧ください。(<project folder>/.idea/gradle.xml
emmgfx 2015年

最初の2つのステップで問題が解決したようです。
マルク・

なにoption name="gradleHome"?それはどこにありますか。
IgorGanapolsky

1
アプリケーションビルドグラドル:aaptOptions.setProperty( "cruncherEnabled"、false)がある場合は、削除することをお勧めします。そして、もう1つ、完全に安定するまでインスタントランを使用しないでください。多くの問題が発生します
Stoycho Andreev

17

同じエラーが発生しました。

プロジェクトをクリーンアップして解決しました([ビルド]> [プロジェクトのクリーンアップ])


3
過小評価された答え!
Anup

これは私にとって正しい答えのようです。Android Studioを使用せずに問題が発生したため、gradle cleanとgradle AssembleDebugを実行しましたが、同じことを実行します。
Shawn


5

gradle-wrapper.propertiesをgradle-2.14.1-allに更新し、プロジェクトをクリーンアップ/再ビルドすることで、このエラーを取り除くことができました。その後、正常に実行されました。他の変更は必要ありませんでした(上記の回答で示唆されているように)...


1
使っていcom.android.tools.build:gradle:2.0.0-alpha1ますか?com.android.tools.build:gradle:2.0.0-alpha6+ にアップグレードした後も、エラーがまだ存在しますhttps\://services.gradle.org/distributions/gradle-2.10-all.zip
Liuting

1
ええ、私はAndroid Studio Preview 5にアップグレードしました。それは、即時実行のためにGradleバージョンをアップグレードする必要があることを示しています。彼らはバグ修正のためにかなり頻繁にアルファ版をリリースしているようです
。– 2016

1
クライアントのプロジェクト/独自の製品で作業している場合、「アルファ」または「ベータ」ビルドの使用は推奨されません。代わりに、1つまたは2つのダウンバージョンを使用してみてください...安定していないためです。バグの修正と改善のために不安定なビルドをテストしている場合は、キャナリーチャネルのandroid studioでもプロセスをさらに支援できます...
Bhuro

4

に変更

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

修正された問題


3

安定したチャネルのAndroid 2.0でもこのエラーが発生しました。

私がしたこと?
-デバイスに新しいバージョンのアプリを実行して置き換えようとした古いバージョンのアプリ(古いバージョンのStudioを使用して構築されたもの)が既にデバイスにインストールされていました。
新しいアプリを実行する前に古いバージョンを完全にアンインストールしたところ、トリックが機能しました。


2

最新のGradleプラグインバージョンでclassPathを更新したい人のために、最新のプラグインバージョンはどこにありますか?

http://tools.android.com/tech-docs/new-build-systemをチェックインして、クラスパスを更新します。現在の最新のものは

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

常に最新のプラグインバージョンでビルドするようにしてください。


2

Instant Runを無効にしたくない場合は、プロジェクトをクリーンアップして再実行してください。


2

私の問題classpath 'com.android.tools.build:gradle:2.1.2'classpath 'com.android.tools.build:gradle:2.1.0'修正するために変更します。


2

私も同じ問題に直面し、それを解決しました。私の場合、グローバルクラス(アプリケーションコンテキストクラス全体)の間違いが原因でしたが、私の間違いはAndroidManifest.xml、アプリケーションクラスVolleyHelperを次のように宣言したことです。

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

しかし、VolleyHelper.java私はデフォルトのコンストラクタを持っていません。VolleyHelper.java(Application Class)にデフォルトのコンストラクタを追加しました。


1

これをグラドルに追加して、デバッグ時にdexを作成しないようにすることもできます

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
}

1

OS 5.0より前のバージョンの一部のAndroidデバイスでは、次のエラーメッセージが表示されます。

原因:java.lang.ClassNotFoundException:クラス "com.android.tools.fd.runtime.BootstrapApplicationが見つかりませんでした

「インスタントラン」を無効にする必要があります。

へ行きますFile> Settings> Built, Execution, Deployment>Instant Run

次にオプションを無効にします Enable Instant Run to hot swap code.

ここに画像の説明を入力してください


1

デバイスを再起動する必要がありました。残念ながら最初に他のすべてを試しましたので、何時間も無駄にされました。


1

アプリ共有している場合、別の解決策は

に行く Android Studio --> Build --> Build APK

ポップアップが付属しAPK generated successfullyます。Show in Explorer生成されたapkフォルダーに移動します。


1

「即時実行」を無効にする必要はありません。
1. ファイルエクスプローラーを使用してプロジェクトのルートに移動します
2. Android Studio(AS)を終了します
3. 削除(どこかに再配置します) ".gradle"のフォルダーコンテンツ
(キャッシュと古いアーティファクトを削除するため)
4. resフォルダー内のすべての不適切なファイルを削除しますファイル
5. ASを再度
起動します 6. モジュールのbuild.gradleで「buildTypes {debug {minifyEnabled true "をfalseに設定します
(これは、プロガードファイルkekにエラーがあったようです)。

アプリを同期、コンパイル、再実行します:/



-1

Android Studioを最新バージョン(2.0 Beta 5)にアップデートするだけです。それ自体が変化しclasspath 'com.android.tools.build:gradle:2.0.0-beta5'、魅力のように機能します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.