Domanda

Possibile duplicato:
Sviluppo per Android in Eclipse:R.java non genera

Ho importato un progetto nel mio IDE Eclipse, ma mi viene visualizzato un errore poiché il file R non viene generato automaticamente.

Come posso modificare il file R in modo che corrisponda ai requisiti del mio progetto?

È stato utile?

Soluzione 3

Ok, ho riparato:

Quando ho cambiato manifesta a bersaglio versione 1.5, milioni di errori apparsi e solo uno non essere collegato a inexistance di classe R - nel file manifesto attributi "targetSdkVersion" e "maxSdkVersion" non esisteva nel SDK 1.5

A causa di questa classe R non è stato in grado di generare.

Altri suggerimenti

un'altra domanda StackOverflow , qualcuno ha risposto questo: è necessario sbarazzarsi degli avvisi e degli errori (sintassi e collegamenti) nei file XML. Questo oltre a fare un progetto pulito / build.

Progetto -.> Clean, e scegliere l'opzione per generare il progetto

Ho scoperto che questo mi accadeva con un layout rotto e tutto esplode.Rilassati, è come quel vecchio errore quando hai imparato a programmare per la prima volta in cui dimentichi un punto e virgola e questo genera un centinaio di errori.Molti si lasciano prendere dal panico, premono tutti i pulsanti e peggiorano le cose.

Soluzione

  • Assicurati che qualsiasi cosa R. i collegamenti a non siano interrotti.Se è rotto, ADK potrebbe non rigenerare R. Correggi tutti gli errori nei tuoi file XML.
  • Se in qualche modo colpisci qualcosa e crei import android.R nella tua attività, rimuoverla.
  • Correre Progetto -> Pulisci.Ciò eliminerà e rigenererà R e BuildConfig.
  • Assicurarsi Progetto -> Crea automaticamente è spuntato.
  • Aspettare alcuni secondi affinché gli errori scompaiano.
  • Se non funziona, elimina tutto nella cartella /gen/
  • Se ancora non funziona, prova facendo clic con il pulsante destro del mouse sul progetto -> Strumenti Android -> Correggi proprietà progetto.

Cosa fare se R non si rigenera

Questo di solito accade quando hai un file XML danneggiato.

  • Controlla gli errori all'interno dei tuoi file XML, principalmente nella cartella /res/
  • I luoghi comuni sono /layout/ e /values/ soprattutto se ne hai modificato uno di recente
  • Controlla AndroidManifest.xml, trovo che spesso cambio una stringa e dimentico di cambiare il nome della stringa da AndroidManifest.xml.
  • Se non riesci a trovare il problema. fare clic con il tasto destro del mouse su /gen/ -> Ripristina dalla cronologia locale...-> seleziona R.java -> fai clic su Ripristina.Ciò non risolve il problema, ma eliminerà gli errori aggiuntivi per facilitare l'individuazione del problema.

So che ci sono già molte risposte qui, ma questo è il primo collegamento su Google, quindi sto raccogliendo tutti i consigli qui e spero che aiuti qualcun altro che non conosce questo argomento :)

Ho avuto un problema simile in cui non veniva rigenerato il file R.java dopo che avevo aggiunto alcune icone e file di layout. Ho provato la pulizia e la ricostruzione e le cose sono peggiorate da allora il file originale R.java era scomparso e ancora non è stato rigenerato. Alla fine mi sono reso conto che ci deve essere errori di compilazione per il compilatore che genera R.java e non vengono mostrati quelli nella console. Per fortuna, avevo notato in precedenza che

  1. è un errore se un file XML si riferisce ad un altro che è inesistente e
  2. E 'un errore di avere lettere maiuscole nei nomi di file (per questo è che proibito, AMO caso cammello).

In ogni modo, dopo la ridenominazione mie icone e file XML in lettere minuscole e poi fissare tutti i riferimenti all'interno dei file XML, voilà, R.java è stato rigenerato. Giusto in tempo per sentirsi bene quando mi sono fermato per il pranzo: -)

Per generare di nuovo il file R:

  1. Modifica qualcosa in Layout> activity_main.xml
  2. Salvare il file
  3. Progetto-> Cancella ...

Basta eliminare il file R si trova nella directory Gen, e quindi provare di Progetto-> Cancella. Poi costruire di nuovo la vostra applicazione.

È inoltre possibile fare clic destro sul project -> Android Tools -> Fix Project Properties. Questo dovrebbe causare la classe R.java per essere ri-generata.

Il mio problema era nel file manifesto. Ho cancellato icone di avvio e non fare riferimento i nuovi sul manifesto:)

riapro eclisse, modificare uno dei miei file xml e poi scopro che la mia classe ACTIVY riferivo android.R invece del mio pacchetto "R": -)

Al fine di rigenerare la R.class, si dovrà cercare di molteplici tecniche.

  • Rimuovere eventuali importazioni R dai file sorgente Java: import R.android
  • Assicurati di aprire il pannello "Problemi" andando a Finestra-> Mostra Visualizza-> Problemi
  • Se si dispone di alcuni errori nelle vostre risorse XML, è necessario correggere tali errori. Nel mio caso ho dovuto cambiare il mio id attributi di includere il segno "+" come segue: android:id="@+id/grp_txt"
  • Ora continuerò a fare Progetto-> Cancella
  • Infine fare Progetto-> Chiudi, Progetto-> Apri

Il segno "+" indica un nuovo ID di risorsa e le forze lo strumento aapt per creare una nuova risorsa intero nella classe R.java.

Se si utilizza IntelliJ IDEA è possibile fare clic Build - Ricostruire Progetto

Se hai cancellato accidentalmente la tua R in Eclipse da "Project Clean" (non farlo) sul destro del destro sul tuo ProgectFile -> Ripristina dalla storia locale ...

ricrea la tua R

Il mio caso:

  • XML non funzionante ha causato un bug in R.(a causa delle lettere ä, ö, ü nell'id)
  • il progetto pulito ha eliminato il mio R.

Cosa ho fatto:

  • R ricreato dalla storia locale
  • ho controllato le importazioni R errate nelle mie classi (come import android.R) e le ho rimosse
  • corretto il file xml e salvato il suo contenuto in un file txt esterno
  • ho cancellato completamente l'xml dal mio progetto.
  • ho eseguito il mio progetto una volta
  • rimetti l'xml fisso al suo posto

E...

  • ho abbracciato forte la mia ragazza senza motivo dopo aver dato di matto come un Hulk.

Il mio problema era errori nel mio file XML. Gli errori non sono sempre rilevati automaticamente in Android Comune editor XML o Android Common Manifest Editor, in modo da provare a utilizzare l'editor di testo normale invece. Ad esempio, in qualche modo un po 'senza senso a caso da un file .java era stato inserito nei miei file manifesto e strings.xml.

Fare clic destro su qualsiasi file XML (molto probabilmente nella cartella / res o AndroidManifest.xml) e fare clic su "Apri con", quindi selezionare "Editor di testo." Assicurarsi che tutto sembra buono e quindi salvare. Inoltre, assicurarsi di abilitare "Build automaticamente" per il vostro progetto. Avevo cancellato il mio file R.java ed è stato ricostruito da zero, quindi non è necessario ripristinarlo dalla storia locale.

Provare ad aggiungere un nuovo "file XML Android" per, ad esempio, la cartella /res/layout. Ciò potrebbe causare il plugin per rigenerare la classe R.

Si può solo modificare i file xml nella cartella / res e anche solo aggiungere uno spazio e salvare, sarà rigenerato.

Ho avuto lo stesso problema - "R" mancante. E nessuno dei consigli forniti qui aiutato. Per fortuna, ho trovato la ragione - in qualche modo Eclipse sono perso il Progetto-proprietà-bersaglio. E 'stato disinserito. Non so fino ad ora, che cosa aveva fatto, ma l'impostazione di nuovo aiutato. Quindi, attenzione! - mancante R può significare il target mancante , anche

Ho provato tutte le soluzioni di cui sopra. Ma purtroppo non ha risolto il mio problema. Il mio R.java era andato non appena ho incollato una nuova foto della mia cartella drawable. Dopo aver letto le risposte per questa domanda ho cercato di Elimina l'icona che ho precedentemente incollato (mentre Build attivata automaticamente) e tutto è andato bene afetr. Spero che questo vi aiuterà qualcuno!

ho avuto quel problema e ho appena a destra-cliccato sul pacchetto di mio progetto e costruire Project. Immediatamente la classe R è apparso nel pacchetto gen.

Nel caso in cui qualcun altro trova questo thread quando usare Google, come ho fatto io:

ho avuto quello che sembrava essere lo stesso problema per un po ', e dopo qualche scavo ho notato che il file R.java ottenuto correttamente costruito, ma è stato ignorato solo per una dei miei file di origine. Il problema per questo file particolare era che Eclipse aveva "utilmente", ha aggiunto la seguente riga in alto:

import android.R;

Che nasconde efficacemente la roba progetto di R. Basta rimuoverlo e tutto andrà bene di nuovo ...

È possibile utilizzare Eclipse "Ripristina da storia locale" per ripristinare il file R vecchio se è stato cancellato. Dopo di che si forse vedere ciò che mantiene Eclipse dal costruire i file (che ho visto altri errori rispetto a prima che mi hanno aiutato risolvere il problema).

Può essere che si può andare a proiettare le proprietà e selezionare l'opzione Android e quindi definire l'obiettivo per il progetto. Una volta applicato l'API destinazione selezionata per questo progetto, si genererà automaticamente R.java.

Per lo più un problema con un file di layout non valido. Aprire la vista 'problemi' e cercare i erros nei file di layout XML. correggerli e la classe R sarà ricreato.

Nel mio caso non c'era un vero e proprio errore. La vista problema mostrato un errore in un layout XML. L'editor ha mostrato l'errore xml troppo. Basta riformattare il XML utilizzando il formattatore automatico con 'Ctrl-F' 'fissa' il xml 'errore' e la classe R è stato ricreato.

Si può solo cancellare il file R.java dal progetto e sarà rigenerare ammesso che abbiate costruire automaticamente abilitata. Se non si dispone di accumulo abilitato automaticamente semplicemente goto Progetto-> costruire tutti

Per me, è stata una risorsa valore String non essere definito ... dopo ho aggiunto a mano per strings.xml, la classe R è stato automagically rigenerata!

Questo problema si verifica normalmente durante l'importazione da un progetto esistente. Provare a correggere tutti gli errori da tutto .xml file la cartella, così come file res manifesto . Molto probabilmente gli errori sono rilevati al " match_parent " parametro, modificarlo a " fill_parent ". Quando tutti gli errori sono chiari, R.java sarà apparso.

Se non ci sono errori su qualsiasi file .xml. Prova modificare qualsiasi file XML (come cancellare una lettera e digitare di nuovo) e quindi salvare il file, questo farà sì che per generare il R.java.

Ho un problema che il findViewById(R.id.edit_text) ma restituiscono un TextView non un EditText. Credo che il problema è la classe R.id ha sbagliato numero id, poi, pulisce il progetto di allora i suoi lavori bene.

Nel mio caso si trattava di un file XML in modo non corretto di nome che ha causato il mio file R non ricostruire. Questo non si è presentato nel pacchetto esploratore, ma è stato dimostrato nel LogCat. Guardare fuori per eventuali avvisi ci sono circa i file res. Non importa quante volte si pulisce il vostro progetto, il file R non ricostruirà fino a quando tali errori sono presi cura di.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top