2009-07-18 15 views
8

Sto memorizzando il mio progetto Android in un repository Subversion. Dopo aver recentemente mischiare un po 'di roba in giro ho cominciato a ricevere tonnellate di errori come:Eclipse sta cercando di creare i file nelle mie directory .svn ... come posso dire di smettere?

syntax error entries /project_name/src/.svn line 1 Android AIDL Problem 
syntax error don't know what to do with "" entries /project_name/src/.svn line 28 Android AIDL Problem 

ecc

Sembra come se Eclipse sta cercando di costruire i file nelle directory .svn ora. Questa configurazione funzionava bene, come posso risolvere questo problema?

+2

punti di bonus se qualcuno può spiegare come dire Eclipse per non visualizzare le cartelle che contengono solo una directory .svn. Invece di mostrare solo com.example.android.ProjectName ottengo voci per com com.example com.example.android e com.example.android.ProjectName perché ognuna di quelle directory ha * qualcosa * in essa. –

+0

Hai mescolato le cose con Subversion rinomina? Tutto funziona perfettamente con il client SVN della riga di comando? – Rafe

+0

Sì, sì. È, sì. –

risposta

4

E 'funzionato per me:

  • Elimina il progetto da Eclipse (non dal disco).
  • "File" -> "Nuovo .." -> "Progetto" -> "Progetto Android"
  • in "Nuovo progetto Adroid" -Dialog selezionato "crea progetto da sorgente esistente" (trova il progetto su HDD) -> "Fine"

mia .classpath file

<?xml version="1.0" encoding="UTF-8"?><classpath> 
<classpathentry kind="src" path="src"/> 
<classpathentry kind="src" path="gen"/> 
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/> 
<classpathentry kind="output" path="bin"/></classpath> 
+0

Questo è esattamente quello che ho finito per fare. Sembra che ci dovrebbe essere un modo migliore però. –

+1

ha funzionato anche per me. +1 – herbrandson

0

Hai la tua cartella src nel tuo percorso di build, in quanto tale, proverà a creare qualcosa nella tua directory .svn. Il mio suggerimento sarebbe quello di rimuovere la cartella .svn dalla cartella src.

In alternativa, è possibile scegliere di escludere le cartelle dal percorso di generazione. Se hai Eclipse 3.4+, vai sul tuo percorso di build e sotto source, dovresti vedere qualcosa chiamato Excluded nella cartella src come elencato nelle cartelle di origine sul percorso di compilazione.

Passare alla modifica e includere un motivo per impedire che la cartella .svn venga inclusa nel percorso di generazione.

Modifica: Se si desidera che le cartelle vengano nascoste nel pacchetto explorer, selezionare l'array in basso nella parte superiore di tale vista (è una freccia bianca) e il filtro di risposta. Quindi seleziona la casella che dice Pattern pattern Patterns e digita .svn, che dovrebbe nascondere quella cartella.

+0

La creazione delle esclusioni per tutte le directory .svn nel percorso di generazione non ha funzionato. Tuttavia, ho capito come dirgli di non mostrare tutte le cartelle ... grazie. –

+0

Suppongo che abbiate provato i parametri jolly quando si escludono le directory dal percorso di generazione? Sono sorpreso escludendo tutte le directory .svn non ha funzionato ... ti sei assicurato che nessuna di queste cartelle fosse presente nella scheda Librerie? – AlbertoPL

+0

Sì ... Ho provato diverse varianti e nessuna ha funzionato (ad esempio: .svn .svn/.svn/*). Inoltre, controllato la scheda Librerie e non sono inclusi lì. –

5

Installare il plug-in Subclipse per Eclipse. Poi Eclipse sa che cosa le cartelle .svn sono per uscire e trattandoli come directory di origine:

http://subclipse.tigris.org/

+1

L'installazione di subclipse non ha funzionato. Anche se avesse ancora non ci dice davvero perché funzionava e poi ha deciso di fermarsi. –

0

se si ha la pazienza o non hanno troppi di loro cartelle è possibile fare clic su di esso nella vista Navigator e assicurati di controllare la proprietà derivata.

Ciò dovrebbe causare l'esclusione di Eclipse in queste cartelle.

... hmmm ... aspetta un minuto ... hai detto che hai trascinato un sacco di roba in giro ... l'hai fatto tramite Windows Explorer o all'interno di Eclipse?

Ci sono comandi in SVN per spostare le cartelle che si trovano sotto il controllo del codice sorgente, se non le si usa si corre il rischio che SVN non riconosca queste cartelle dal loro originale e rimuova la cronologia allegata al file stesso. peggiori somethins ho avuto alcuni effetti collaterali strani dove l'unica soluzione era quella di

  1. eliminare tutte le cartelle .svn
  2. copiare tutti i fonte altrove
  3. fare un checkout da zero
  4. sovrascrivere i file dal repository con il backup in 2
  5. checkin

Poi ho fatto il riassetto da Eclipse o direttamente nel SVN attraverso la SVN repository explorer e ha iniziato a lavorare di nuovo con un nuovo checkout.

Solitamente eclissi si comporta abbastanza bene con questi.le cartelle svn, ma in qualche rara occasione mi viene fuori di testa e ho dovuto ricominciare da zero, a volte reinstallando eclipse dal polso direttamente (prova a pulsare ne vale la pena, reinstallare da zero un nuovo sistema è solo qualche clic) .

Comunque .. Spero che questo aiuti ... buona fortuna

+0

Non riesco a capire come cambiarli in "derivato" poiché le directory .svn non vengono visualizzate nel pacchetto explorer. Ho spostato i file con gli strumenti SVN ... non con Eclipse o con "Windows Explorer" (in realtà eseguendo Linux qui). Ho provato i 5 passaggi e ho gli stessi risultati. Proverò a reinstallare, ma questo è un passaggio di ultima istanza per me adesso. –

+0

Ok, ho fatto una variazione sui 5 passaggi e ho funzionato di nuovo. 1) ho creato un nuovo progetto 2) copiato nei miei file E le directory .svn, ma nessuna delle cose di Eclipse, dalla riga di comando 3) aveva Eclipse aggiornare le directory e voilà ... sta funzionando. Il fatto è che ho fatto un diff su tutti i vecchi e nuovi file generati da Eclipse e sono identici. Davvero non lo capisco. –

+0

Wow ... questo è davvero sconcertante ... felice che tu abbia riavviato tutto correttamente. Eclipse può essere un rompicoglioni a volte quando inizia a recitare, anche se di solito trovo il modo di costringerlo alla normalità, ma ci sono momenti in cui voglio solo schiaffeggiare la cosa. – Newtopian

0

mi consiglia di utilizzare il plugin Subversive per fornire una corretta integrazione per l'utilizzo di repository SVN con Eclipse.

+0

yeah subclipse non sembra essere aggiornato molto più –

+1

Poiché Subversive è ora un progetto Eclipse, è praticamente il fornitore ufficiale SVN. – Mark

+0

Subclipse è perfettamente aggiornato e supporta SVN 1.6. È * non * vero che non è più aggiornato. Detto questo, Mark è corretto comunque: Subversive lo ha fatto, Subclipse non ... – Henning

12

Sebbene sia possibile risolvere questo problema installando un plug-in come Subversive, che è già stato menzionato, è possibile risolvere questo problema anche senza il plug-in.

È possibile indicare eclipse per ignorare i file memorizzati nelle directory .svn all'interno del percorso di generazione. Per farlo, apri le proprietà del progetto facendo clic con il tasto destro del mouse sul progetto e quindi seleziona l'opzione Java Build Path sulla sinistra. Cerca la scheda Source. Lì vedrai tutte le tue cartelle di origine (se non hai cambiato nulla questo sarebbe gen e src per Android SDK 1.5r3). Fare doppio clic sulla voce Excluded nell'albero e aggiungere due modelli di esclusione per ogni directory:

.svn/** 
**/.svn/** 

si dovrebbe impostare la parola chiave svn:ignore della directory del progetto di ignorare le directory che contengono i file generati automaticamente, in quanto possono essere generati in qualsiasi momento e occupano solo spazio nel repository. Per un progetto Android SDK 1.5r3 corrente questa sarebbe la bin e la directory gen. Se si ignora la cartella gen ciò significa anche che non è necessario impostare il modello di esclusione per questa directory, poiché Subversion non crea una directory .svn all'interno di voci ignorate.

Edit: Come menzionato da Henrik, è consigliabile pulire il progetto dopo un tale cambiamento.

+0

Questo funziona giustamente :) –

+0

Ha funzionato come un fascino, ha dovuto pulire il mio progetto però. – Henrik

Problemi correlati