2009-07-29 12 views
6

Ho un progetto con una grande quantità di pre-elaborazione. Ho scritto questa parte e vorrei ora convertire il progetto in un progetto GAE. Ho abilitato il supporto GAE in Project-> Properties e ho alcune funzionalità ma quando voglio testare l'applicazione ottengo una "directory di archivio dell'applicazione Web non esistente".Conversione di un progetto Java Eclipse in un dispositivo Google AppEngine

C'è un modo per generare automaticamente cartelle e file mancanti o devo farlo manualmente?

Non voglio copiare le mie classi in un progetto appena creato poiché ciò significherebbe perdere tutto il mio controllo di versione.

+0

Cosa stai usando per il controllo di versione? C'è qualche possibilità che possa essere copiato con le classi? Se stai usando qualcosa come Subversion ci deve essere un modo solo per controllare i file svn nel nuovo progetto Eclipse. –

risposta

1

Penso che con lo GAE plugin for Eclipse, è possibile creare uno scheletro di app GAE. Devi solo spostare i vecchi file di progetto in questo progetto e il gioco è fatto.

Per la conversione, non so se è possibile, se la struttura della tua app è completamente diversa dalla struttura GAE.

Per quanto riguarda l'errore, sembra che la tua app manchi di una directory WEB-INF che qualsiasi webapp deve eseguire.

1

Sto utilizzando GAE Eclipse Plugin 1.2.1 e Eclipse 3.4.2 e ho provato la stessa operazione e fino ad ora non ho avuto esito positivo. Credo che il plug-in di Eclipse sia hardcoded per cercare i vari componenti in posizioni specifiche. (L'approccio corretto sarebbe stato quello di configurare il plugin GAE per cercare tutti i componenti di WEB-APP in altre posizioni rispetto al valore predefinito.) Penso che date queste versioni, la conversione di un progetto di eclipse non sarebbe possibile.

Una possibile soluzione, dato questo vincolo, sarebbe creare un nuovo progetto GAE e copiare tutto il codice esistente in quella struttura senza alterare le cartelle già create dal plugin GAE.

0

Non sono sicuro su tutta la roba specifica GAE, ma è possibile copiare i progetti vecchi contenuti:

  • Crea nuovo GAE-Project
  • chiuderlo
  • Usare un file manager di fuori di Eclipse per copiare tutti i tuoi vecchi progetti contenuti nel nuovo progetto. Assicurati di includere la cartella ".svn", potrebbe essere invisibile in explorer/nautilus/qualunque cosa. Dovresti anche pensare di lasciare da solo il file .project del nuovo progetto, poiché potrebbe contenere una configurazione specifica GAE.
  • Aprire il progetto in Eclipse di nuovo
  • destro progetto click -> Team -> Condividi progetto -> Selezionare SVN
  • tuo vecchio URL progetto dovrebbe essere già lì, lasciare il pulsante di scelta con "Usa impostazioni progetto" controllato.

Il progetto si ricollega al percorso del vecchio repository e nella visualizzazione di sincronizzazione è necessario visualizzare i nuovi file come in uscita.

1

Non so se questo funzionerà per Java -> conversione del progetto GAE, ma ho avuto la fortuna di fare qualcosa simile, convertendo Generale -> progetti Java utilizzando le seguenti operazioni:

  1. chiudere il progetto .
  2. Aprire il file di progetto (che si trova nella directory principale del progetto appropriato) chiamato.progetto con il tuo editor predefinito. Cerca:

    <natures>
    </natures>

e modificarlo in

<natures> 

     <nature>org.eclipse.jdt.core.javanature</nature> 

</natures> 

Conservare il file modificato.

  1. Aprire di nuovo il progetto - ora è un progetto java.

Ovviamente dovrai creare un nuovo progetto GAE e quindi cercare all'interno del suo file .project per ottenere il contenuto dell'elemento corretto. Ho trovato i passaggi precedenti su google, quindi non posso sfortunatamente accreditare la fonte originale delle istruzioni di cui sopra.

1

È possibile convertire i progetti Eclipse esistenti in progetti GAE. Tutto quello che devi fare è cliccare con il tasto destro del mouse sul progetto e scegliere le impostazioni. Quindi seleziona le impostazioni di Google e seleziona l'opzione "usa l'SDK di Google App Engine".

Using Google Plugin for Eclipse with existing projects

+0

Sembra che abbiano rimosso questa funzione, non è menzionata nella pagina collegata e non sembra funzionare per me nelle versioni odierne di eclipse e GPE. –

+0

Cosa intendi? È proprio sotto la sezione "Abilitazione di SDK di Google se il tuo progetto ha già una sezione" di directory WAR. –

0

Per completare la risposta @Marks, si dovrebbe aggiungere questa riga al file .project:

<nature>com.google.appengine.eclipse.core.gaeNature</nature> 
Problemi correlati