2011-01-17 13 views
19

Sto cercando di risolvere un problema in Eclipse per 3 ore e non ho fatto alcun progresso. Domani verrà il cliente a cercare la mia app e non mi resta più tempo. Questo è davvero frustrante!Problema di imballaggio Android: resources.ap_ non esiste

Questa mattina mentre stavo programmando e volevo eseguire la mia app sul mio dispositivo, Eclipse si è bloccato improvvisamente. 'aapt.exe ha smesso di funzionare'

Dopo questo Eclipse non è stato avviato più. Si è bloccato all'immagine splash.

Ho cercato su Internet e ho provato diverse soluzioni come tornare all'aggiornamento 20 di Java SE 6, cambiando il file .ini ecc. Alla fine della reinstallazione, Eclipse ha fatto il lavoro.

Poco dopo che "aapt.exe ha smesso di funzionare" è stato restituito. Ho trovato una soluzione cambiando il mio obiettivo di progetto. 1.5, 1.6, 2.2 non importa, purché sia ​​diverso da quello precedente.

Ora ho l'errore Error generating final archive: java.io.FileNotFoundException: C:\xxx\bin\resources.ap_ does not exist.

Ho provato pulito ma quello non funziona. Anche l'eliminazione e la rigenerazione automatica di R.java non ha funzionato.

mi corse lo stesso codice in Netbeans con il plugin di Android e non mi dà la 'aapt.exe ha smesso di funzionare' di nuovo :(

ragazzi per favore, come posso risolvere questo problema?

Edit:

penso possa aver trovato la ragione Queste sono le linee di errore nella console:.

org.xmlpull.v1.XmlPullParserException: Binary XML file line #3: <bitmap> requires a valid src attribute 
at android.graphics.drawable.BitmapDrawable.inflate(BitmapDrawable.java:341) 
at android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:779) 
at android.graphics.drawable.Drawable.createFromXml(Drawable.java:720) 
at com.android.layoutlib.bridge.ResourceHelper.getDrawable(ResourceHelper.java:150) 
at com.android.layoutlib.bridge.BridgeTypedArray.getDrawable(BridgeTypedArray.java:668) 
at android.view.View.<init>(View.java:1846) 
at android.view.View.<init>(View.java:1795) 
at android.view.ViewGroup.<init>(ViewGroup.java:282)  
at java.lang.reflect.Method.invoke(Unknown Source) 
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619) 
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) 
at org.eclipse.equinox.launcher.Main.run(Main.java:1407) 
at org.eclipse.equinox.launcher.Main.main(Main.java:1383) 
[2011-01-17 16:37:20 - gegevens.xml] Unable to resolve drawable "[email protected]" in attribute "background" 

Il file di cui si tratta è 'bg.png'. È un piccolo file png che ripeto in un file .xml.

<?xml version="1.0" encoding="utf-8"?> 
<bitmap xmlns:android="http://schemas.android.com/apk/res/android" 
android:src="@drawable/bg" android:tileMode="repeat" /> 

Questo file ha funzionato dalla prima volta senza problemi. L'ho eliminato dalla cartella drawable, ho aspettato un messaggio di errore e poi l'ho aggiunto. La x rossa accanto al nome della cartella è scomparsa, ma ancora nulla di diverso ...

+0

Puoi pubblicare il tuo gegevens.xml (o qualsiasi altro xml in cui è definito il tuo bitmap in)? – kcoppock

+0

Domanda emessa – Galip

risposta

10

Un colpo al buio, ma se è solo il file PNG uno potrebbe eliminarlo dal progetto e aggiungerlo indietro? Deve esserci qualcosa che infrange il file delle risorse.

+4

E 'stato effettivamente il file png a 9 patch che lo ha causato. Tuttavia, basta eliminarlo e aggiungere un file png funzionante didn Sono passato a una vecchia versione funzionante del nostro SVN e ho aggiunto manualmente il file .png uno per uno, ho trovato quello che lo ha causato e ne sto utilizzando uno diverso ora e funziona. Davvero frustrante che Eclipse non mi ha dato un messaggio di errore e agisce in modo così instabile . Ho rovinato il mio intero pomeriggio reinstallando tutto. – Galip

+0

Potrebbe essere correlato, ma dalla piccola esperienza Android che ho, sembra che il file R generato possa essere impantanato se si scrive codice non valido quando il progetto sta costruendo quel particolare pezzo. Una pulizia di solito funziona per correggere gli errori. – Heckman

+0

Avevo un file .png il cui nome non poteva essere un nome di risorsa. – 18446744073709551615

0

Prova a eseguire la pulizia, ma deseleziona anche la generazione automaticamente e fai clic su "Crea progetto" nel menu "Progetto". Una volta che si costruisce manualmente, è possibile ricontrollare la "build automaticamente".

Vorrei anche l'arresto eclispe, e poi uccidere ADB

> adb kill-server 
+0

Purtroppo questo non ha funzionato neanche :(resources.ap_ non esiste ancora – Galip

+0

Quel file dovrebbe essere compilato e gestito automaticamente dal plugin egit. Potrebbe una delle tue risorse essere corrotta causando il fallimento della creazione di quel file ? –

+0

Non ho aggiunto o eliminato un file di risorse, quindi come faccio a sapere quale potrebbe causarlo? – Galip

6

Mi sono imbattuto in questo stesso problema dopo aver importato il mio progetto da un'altra macchina, ma non avevo errori nella console come l'OP. Ho deselezionato Project-> Build Automatically e poi Project-> Clean e questo ha risolto il mio problema. In realtà mi mancavano diversi file nella directory bin/per il mio progetto e questo li ha risolti tutti.

+0

questo progetto di miniera fissa :) +1 – confiq

+0

Ha funzionato anche per me –

+0

non funziona per me :( – Noman

1

Ho avuto lo stesso problema in quanto ho aggiunto alcune immagini in ogni directory di risorse e purtroppo li ho denominati .png.In effetti c'erano jpegs e il plug-in di eclipse lo stava segnalando (a mia insaputa nella console)

Il problema che ho riscontrato è che se si cancella la console, le informazioni di registrazione vengono perse e non registra di nuovo nulla!

Cambiare l'estensione da .png a .jpg risolto il mio problema

+0

Sì, cambiare l'estensione da .png a .jpg ha risolto anche il mio problema. Il motivo potrebbe essere che l'immagine originale sul internet era jpg, ma ho provato a salvarlo sulla mia macchina come png. –

0

A volte questo errore si verifica quando si crea ninepatch con sbagliate puntini neri/linee. Ad esempio, le linee di destra e di fondo devono essere solide senza trattini o regioni vuote.

9

Ho appena riscontrato lo stesso errore dopo aver eseguito un aggiornamento SDK con Eclipse (Indigo). Normalmente eliminerei gli errori e proverei a ricostruire o pulire con successo, tuttavia questa volta non risolve il problema.

Infine sono andato alla cartella sdk di Android e aggiornato manualmente. Tornato in eclissi ho ripreso l'errore, ma senza la ricostruzione o la pulizia sono stato in grado di avviare l'applicazione sul dispositivo premendo il gioco una seconda volta.

EDIT: Apparentemente questo problema è intermittente, poiché ora sono nuovamente in grado di eseguire sul dispositivo o di esportare l'apk firmato.

RISOLTO: Il problema deriva da un danneggiamento nella cartella .metadata. L'ho scoperto reinstallando Indigo, ma nel fare ciò non ho rimosso la cartella originale dell'area di lavoro. Il problema ovviamente si presentò di nuovo. Ho eliminato completamente la cartella .metadata, che ripristina in modo efficace tutte le impostazioni di configurazione di Eclipse. Tutte le implementazioni e le firme funzionano perfettamente ora. Ho appena dovuto impostare di nuovo l'ambiente a mio piacimento, che richiede alcuni minuti rispetto alle ore che ho passato a risolvere questo problema.

+0

Ho avuto lo stesso identico problema negli ultimi due giorni dopo l'aggiornamento a ADT r14 e all'SDK Manager! Non so come posso ringraziarti! Ho provato a reinstallare Eclipse, ma non ho pensato alla dannata cartella .metadata. +100 amico mio. : D – frapontillo

+1

+1 Impressionante, ha risolto il mio problema, grazie mille. Ora che è stato risolto, posso continuare a lavorare domenica sera alle 23:30 per la mia presentazione domani. Se solo potessi trovare il tuo post e l'ora prima di lasciare il lavoro venerdì ... – DarthJDG

3

Penso che questo errore possa verificarsi per una serie di motivi. La seguente soluzione è nota per essere specifica dello stesso messaggio di errore visualizzato quando si utilizza ADT 14 (rilasciato ieri) con l'output di generazione impostato su Verbose:

Ho eseguito lo stesso errore utilizzando Eclipse 3.7 (Indigo) dopo l'aggiornamento a ADT 14 e SDK 14 su tutti i progetti, compresi quelli appena creati. Ho trovato una soluzione alternativa che qualcuno ha postato sul bug tracker ADT, che fondamentalmente è di passare a Eclipse Settings-> Android-> Build-> Build Output da "Verbose" a "Normal". Il post è here.

+0

Dio, odio il set di strumenti scadente di Google :(.... bella scoperta sulla risposta, però, TomW! – Nate

3

Nel mio caso, ieri dopo l'apertura di Eclipse, stavo cercando di scaricare gli aggiornamenti e l'ho cancellato da quando stavo usando il mio hotspot cellulare. Ho provato la soluzione di eliminazione delle cartelle dei metadati menzionata qui e non ha funzionato per me. Andando a Finestra->SDK Manager e aggiornamento tutto sembra essere la mia soluzione.

+0

È meglio aprire l'SDK Chiude Manager con Eclipse, poiché l'aggiornamento può trovare conflitti: –

1

Sopra la soluzione non ha funzionato per me.

Il modo in cui l'ho fatto è quello di aggiornare non solo ADT ma anche SDK. Per farlo basta andare su Android SDK Manager e scaricare gli aggiornamenti.

FUNZIONA!

0

Prova a

Windows-> peferences -> Android -> Build -> Costruire uscita

silenzioso

http://code.google.com/p/android/issues/detail?id=20395

+2

Benvenuti in StackOverflow: in primo luogo, le risposte che contengono collegamenti a siti esterni senza altre informazioni non sono buone risposte, se il collegamento esterno è inattivo o scompare per qualche motivo, la risposta diventa priva di significato, dovresti spiegare la soluzione e poi aggiungere il link come riferimento aggiuntivo, in secondo luogo, ho esaminato il link che hai postato e non vedo alcuna relazione tra il suo contenuto e questa domanda se non che l'articolo collegato menziona aapt.exe'. Puoi modificare la risposta per chiarire in che modo il link risponde alla domanda? Grazie. :) –

1

E 'molto insignificante ma cambiando costruire la modalità da verbose a silent ha fatto il trucco! Nient'altro (progetto di pulizia, riapertura, reinstallazione) ha fatto.

0

In alcuni casi, questo errore scompare dopo aver corretto gli errori a monte. Nel mio caso si trattava di una incompatibilità di versione in "fullwebview.xml".

Lì, 'layout_width'/height è stato impostato su un valore non supportato nella mia destinazione build, 2.1. La modifica del valore in "fill_parent" ha risolto il problema.

0

ho incontrato questo stesso errore ma poi ho visto che il mio layout.xml non stava raggiungendo un errore per un TextView la cui risorsa android:text="@string/my_unmapped_string stringa non è stato mappato in strings.xml. Così, quando ho visto il layout grafico è stato mostrato:

Impossibile risolvere .....

Quando ho mappato la risorsa correttamente e corse di nuovo il progetto, ha funzionato bene e che bin\resources.ap_ does not exist errore era sparito :)

0

Nel mio caso, era il file add-icon.175x175-75.png (nome file valido, ma nome risorsa non valido) copiato in res/drawable per errore. Dopo aver rimosso questo file, Eclipse ha fatto (ad aprile 2015) alcune build di successo con origini non corrette, e solo allora ha iniziato a comportarsi in modo sensato, mostrandomi le risorse mancanti e l'XML malformato (ho cambiato il layout).

Problemi correlati