2013-10-05 12 views
6

Uso Eclipse per lo sviluppo di Android e cerco di utilizzare IntelliJ. Ho eseguito correttamente l'applicazione una volta. Ma ora, non riesco a ricostruire l'applicazione Hello World di esempio. Cosa mi manca qui? Il R.java non sta più ricostruendo. Ecco uno screenshot degli errori.IntelliJ IDEA 12 classe duplicata R.java e BuildConfig.java

enter image description here

Ed ecco la mia impostazione

enter image description here

+0

Ho lo stesso identico problema: ti farò sapere se trovo qualcosa. IntelliJ è di gran lunga il migliore IDE per Android, ma sta diventando un incubo. –

+0

Questo è successo a me oggi. Ho scoperto che ero stato sciatto e aveva dipendenze duplicate. Dopo aver rimosso la dipendenza extra, tutto ha funzionato di nuovo bene ... –

risposta

25

Questo è successo a me perché ho contrassegnato le cartelle di origine in modo errato. Sotto le impostazioni del progetto dopo aver fatto clic su un particolare modulo, è sufficiente controllare se sono state contrassegnate eventuali cartelle aggiuntive come cartelle di origine. Controllare lo screenshot, per impostazione predefinita dovrebbe essere qualcosa come qui di seguito, Tutti i marchi come pulsanti dovrebbe essere deselezionata

enter image description here

Per errore ho controllato Segna come: il tasto "Source" e ho ottenuto questo errore. Basta deselezionare.

+0

Questo ha fatto il trucco, un po 'come veniva inclusa la cartella R sotto il target, quindi errore di classe duplicato. Grazie amico mio! – Chepech

+0

Eccellente. Anche questo mi ha fatto uscire da un buco. Cercando di ottenere intellij per raccogliere le fonti grezze per l'ispezione di classe mi ha portato qui - Continuo a ricevere una fonte decompilata per cose come java.lang.string. – RichieHH

+0

Molto meglio della mia risposta: D Grazie per aver risolto correttamente questo problema! –

1

R e BuildConfig sono generati automaticamente dal sistema di compilazione di Android. Forse hai in qualche modo copiato una versione autogenerata del tuo progetto eclipse nel progetto idea e poi l'idea ha generato seconde. Per impostazione predefinita, l'idea utilizzerà una cartella chiamata gen per questi file contrassegnata come cartella di origine. Assicurarsi che non ci siano altri contenitori di cartelle di origine questi file.

È possibile trovare rapidamente le classi premendo Ctrl + N e iniziare a digitare il nome della classe. Se trovi risultati duplicati, cancellane uno e lascia che l'idea rigeneri quelli corretti.

+1

questo non è un progetto eclissi. ho iniziato questo dal wizard IntelliJ. sigh .. grazie comunque – bman

+0

Ottimo commento. IntelliJ crea progetti Android con i percorsi impostati su .idea/gen (etc) per impostazione predefinita. Quindi, se li si cambia in Impostazioni progetto, è necessario eliminare .idea/res o si avranno le definizioni di classe R e BuildConfig duplicate. –

0

Purtroppo la risposta potrebbe non piacerti, ma il mio progetto è dovuto ieri e non ho il tempo di controllare ogni impostazione per risolvere il problema.

Il modo in cui ho risolto è ricreare un nuovo progetto, copiando solo src, res, lib ecc. Questo è stato dolorosamente difficile e presenta altri problemi (file manifest e analisi di esecuzione/debug), ma si è rivelato relativamente breve rispetto alla creazione di un nuovo progetto SEMPRE e alla ricerca di opzioni di compilazione che potrebbero o meno essere valide.

Ho riscontrato il problema durante il tentativo di aggiungere le librerie KSOAP2 al progetto IDEA e sebbene KSOAP non abbia nulla a che fare con il problema, è possibile che le abbia importate in modo errato la prima volta e creato dipendenze extra autoreferenziali. Questo ha più senso, ma cercare di capire come annullarlo sarebbe quasi impossibile.

+0

Grazie, sono davvero frustrato con IntelliJ.Questo è il mio primo tentativo di usarlo come la maggior parte delle persone dice che è davvero il miglior IDE Android là fuori. Non so se hai visto i miei post su g + e ho anche incontrato una serie di altri problemi dopo aver ricreato il progetto. Lo accetterò come risposta poiché non c'è davvero una risposta reale. Per il momento rimarrò con Eclipse. – bman

+0

Condivido il tuo dolore, è qualcosa di terribile rimanere bloccato in un progetto con un IDE non collaborativo. Ma devo dire che è davvero un grande IDE quando capisci le stranezze. Una volta che ho riavviato il progetto che avevo tutti i tipi di mal di testa con SVN, ma almeno l'IDE ha SVN costruito. La cosa che odio di più di Eclipse è lo strings.xml. Lo trovo così difficile quando sono occupato nell'interfaccia utente e ora devo andare a creare una stringa, salvare il file, aprire una nuova finestra ... Il mio progetto attuale è la seconda possibilità di IDEA e devo dire, anche per le sue difficoltà , Tornerò. –

0

si può provare a eliminare il re buildconfig file dalla cartella di x com/x/sotto Android -> java

che ha risolto il tutto per me.