2015-08-06 4 views
13

Dopo aver iniziato la mia eclissi di oggi, qualsiasi progetto corro restituisce il seguente errore:java.lang.NoSuchFieldError Android/sostegno/v7/AppCompat/

08-06 08:01:23.770: E/AndroidRuntime(5406): FATAL EXCEPTION: main 
08-06 08:01:23.770: E/AndroidRuntime(5406): Process: be.thomasmore.powerfactory, PID: 5406 
08-06 08:01:23.770: E/AndroidRuntime(5406): java.lang.NoSuchFieldError: No static field abc_screen_toolbar of type I in class Landroid/support/v7/appcompat/R$layout; or its superclasses (declaration of 'android.support.v7.appcompat.R$layout' appears in /data/app/be.thomasmore.powerfactory-2/base.apk) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at android.support.v7.app.AppCompatDelegateImplV7.ensureSubDecor(AppCompatDelegateImplV7.java:299) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:246) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:106) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at be.thomasmore.powerfactory.MainActivity.onCreate(MainActivity.java:44) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at android.app.Activity.performCreate(Activity.java:5990) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at android.app.ActivityThread.access$800(ActivityThread.java:151) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at android.os.Handler.dispatchMessage(Handler.java:102) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at android.os.Looper.loop(Looper.java:135) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at android.app.ActivityThread.main(ActivityThread.java:5254) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at java.lang.reflect.Method.invoke(Native Method) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at java.lang.reflect.Method.invoke(Method.java:372) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) 
08-06 08:01:23.770: E/AndroidRuntime(5406):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 

Ieri sera tutto era ancora lavorando bene ..

Qualche idea?

+0

non hai impostato (aggiungi) la libreria appcompat correttamente ... (hai aggiunto solo un barattolo?) ... domande simili sono state fatte più volte, hai seguito qualcuno di em? – Selvin

+0

Spostati su Android Studio e importare appcompat dal gradle –

+0

o leggere http://wptrafficanalyzer.in/blog/android-setting-up-actionbarcompat-support-library-in-eclipse/ –

risposta

11

A quanto pare ho bisogno di aggiornare i miei strumenti SDK e gli strumenti della piattaforma SDK, dopo di che sono stato in grado di selezionare 5.1.1 come destinazione di compilazione per il mio progetto di libreria appcompat v7.

8

Ho avuto un problema simile dopo l'aggiornamento ad Android Studio 2.0 e Android Support Library 23.3.0. L'errore era

java.lang.NoSuchFieldError: No static field AppCompatTheme of type 

L'ho risolto andando su Android SDK Manager. Aggiornamenti erano disponibili per le seguenti:

  • Android SDK creare strumenti
  • SDK Android Tools
  • supporto Android Biblioteca
  • Google Repository

aggiornato e corse di nuovo l'applicazione, che ha risolto il problema.

Edit:

Se avete già aggiornato sopra cose di cui e avere ancora problemi, come @mparkes sottolineato nel commento, controllare se è stato aggiornato il file build.gradle(app) di utilizzare l'ultima libreria come segue:

dependencies { 
    compile 'com.android.support:appcompat-v7:23.3.0' 
} 

Quindi rigenerare il progetto: Build Menu > Rebuild Project

+0

Ho anche avuto lo stesso problema e tutto era già stato aggiornato. Avevo appena cambiato il mio file di valutazione per compilare 'com.android.support:appcompat-v7:23.3.0' l'ho risolto con build -> rebuild – mparkes

5

ho anche avuto questo problema dopo l'aggiornamento ad Android St audio 2.0. Nel mio caso si trattava del problema di esecuzione immediata. C'è un bug in AOSP Issue Tracker.

Quindi la disattivazione di Instant Run mi ha aiutato.

  • Apre la finestra di dialogo Impostazioni o Preferenze.
  • Passare a Build, Execution, Deployment> Instant Run.
+0

funziona anche se si pulisce e si ricostruisce il progetto. inoltre, questo succede anche nella recente build di AS (2.1.2 per esempio) – andreimarinescu

0

Nel mio caso, ho utilizzato la v7: 23.3.0 nel mio progetto Libreria, ma v7: 23.0.0 nell'app reale. Ciò significa che la libreria è stata compilata con una versione superiore rispetto a quella disponibile nell'app.