6 Stimmen

Nicht in der Lage, Aktivität java.lang.ClassNotFoundException zu instanziieren.

Ich habe den folgenden Fehler während des Entwicklungszyklus einige Male gesehen und habe jetzt gerade einen Fehlerbericht erhalten. Ich habe keine Ahnung, was das verursacht. Nachdem ich ähnliche Fragen zu diesem Thema auf dieser Seite gelesen habe, habe ich meinen AndroidManifest doppelt überprüft und für mich sieht alles in Ordnung aus. Irgendwelche Ideen, was möglicherweise diese Ausnahme verursacht?

java.lang.RuntimeException: Aktivität ComponentInfo{com.jerrellmardis.ridecta/com.jerrellmardis.ridecta.ui.StopTimesActivity} kann nicht instanziiert werden: java.lang.ClassNotFoundException: com.jerrellmardis.ridecta.ui.StopTimesActivity
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1983)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
at android.app.ActivityThread.access$600(ActivityThread.java:130)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4745)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: com.jerrellmardis.ridecta.ui.StopTimesActivity
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61)
at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
at android.app.Instrumentation.newActivity(Instrumentation.java:1053)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1974)
... 11 more

Eine weitere Sache, die zu beachten ist, ist, dass ich die android-support-v4-googlemaps-Bibliothek verwende, die unter https://github.com/petedoyle/android-support-v4-googlemaps gefunden werden kann und es mir ermöglicht, eine MapView in einem Fragment einzubetten (zusammen mit der ActionBarSherlock-Bibliothek). Diese Ausnahme scheint ein Abhängigkeitsproblem zu sein und ich bin mir nicht sicher, ob es mit der Verwendung der oben genannten Bibliotheken zusammenhängt.

Hier ist die Manifest-Datei:

5voto

Regis_AG Punkte 12734

Mit der rechten Maustaste auf Ihren Projektordner klicken => Eigenschaften => Java Build Path => Reihenfolge und Export => das Kästchen "Android Private Libraries" markieren, wenn es nicht markiert ist. Führen Sie eine Bereinigung durch. Und es funktioniert!

2voto

Sahil Mahajan Mj Punkte 12721

Das System kann Ihre Klassendatei nicht finden. Entweder stimmt etwas nicht mit der Klassennamenspezifikation in der Manifestdatei überein oder Ihre Klasse befindet sich in einem anderen Paket, wie Sie angegeben haben.

Versuchen Sie, Ihren Code zu bereinigen und neu zu erstellen. Manchmal müssen wir den Code bereinigen, wenn wir Aktualisierungen vornehmen.

Außerdem wird niemand den Fehler nur durch Lesen Ihres Logcat finden können. Posten Sie also besser Ihre Manifestdatei und alle Klassennamen.

1voto

MysticMagicϡ Punkte 28235

Fügen Sie die Aktivität zur Manifestdatei hinzu als..

Und wenn Sie es bereits hinzugefügt haben, versuchen Sie, Ihr Projekt zu bereinigen und dann auszuführen

1voto

Nik Reiman Punkte 37385

In meiner Erfahrung, wenn Sie merkwürdige Ausnahmen sehen, die mit dem Laden von Ressourcen oder Klassen zusammenhängen, von denen Sie absolut sicher wissen, dass sie vorhanden sind, könnte das Problem damit zusammenhängen, dass die Aktivität zu nahe an ihrem Speicherlimit liegt. Nachdem ich an einigen speicherhungrigen Apps gearbeitet habe, kann ich sagen, dass ich viele Ausnahmen "in freier Wildbahn" gesehen habe, die damit zu tun hatten, dass Ressourcen nicht gefunden wurden, die ich weiß, dass sie korrekt in den Produktionsbuild aufgenommen wurden.

Im Allgemeinen sind in diesen Fällen die Stacktraces nie zu 100 % identisch, daher ist es wahrscheinlich ein Fehler in Ihrem Build oder Projekt konfiguration, wenn Sie konsequent die gleichen fehlenden Klassen sehen. Ein vollständiger Neuaufbau (wie es auch andere vorgeschlagen haben) könnte helfen.

Andernfalls würde ich vorschlagen, einen Dienst wie Crittercism zu verwenden, um genauere Informationen über das Gerät kurz vor dem Auftreten der Abstürze zu erhalten.

1voto

Code Word Punkte 366

Bitte folgen Sie den Schritten:-

1> Entfernen Sie die externen Jars aus der Referenzbibliothek. Fügen Sie sie hier nicht erneut hinzu.

2> Erstellen Sie einen anderen Ordner "libs" in Ihrem Projekt.

3> Kopieren Sie Ihre Jars in den "libs" Ordner.

4> Bereinigen Sie und führen Sie die App erneut aus.

Hoffentlich funktioniert es.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X