2010-01-11 6 views
11

Ho creato un progetto java google-app-engine in Eclipse utilizzando il plug-in Eclipse di Google. Il mio precedente tentativo di distribuzione fallito. Ora, quando Riprova, ricevo il seguente messaggio:come usare appcfg.py per i progetti google-app-engine creati usando il plugin eclipse di google?

Impossibile aggiornare app: Errore durante la pubblicazione di URL: http://appengine.google.com/api/appversion/create?app_id=mybdaywisherversion=1 409 conflitto Un'altra transazione per questo utente è già in corso per questa applicazione e versione principale. Quell'utente può annullare la transazione con il comando "rollback" di appcfg.py.

Ora, ho sempre utilizzato le funzioni di google-app-engine solo da Eclipse e non ho idea di come eseguire il comando appcfg.py.

Impossibile ottenere molto aiuto dalla documentazione disponibile su Internet. L'unica cosa che riuscivo a capire era per mac (sono su mac), il comando da utilizzare è appcfg.sh. All'interno di Eclipse, ho cercato dove si trova App-Engine SDK sulla mia macchina e sono andato in quella posizione. Anche trovato appcfg.sh lì. Ma quando provo a eseguirlo, riporta solo l'errore "comando non trovato". Ho provato varie alternative per eseguirlo (come provato a farlo funzionare con sudo, ho provato ad eseguirlo come ./appcfg.sh andando sul suo posto) ma non ha avuto successo

Qualcuno può dirmi il passaggio che dovrò seguire per eseguire il comando apcfg?

risposta

3

Migliore prospettiva acquisita sul problema.

Documentare il problema qui a beneficio di on-curiosi:

stavo usando Plugin di Google per Eclipse per un progetto di Google App Engine. Un tentativo di distribuire l'applicazione sul server app-engine non è riuscito a causa di problemi di rete. I tentativi successivi stavano fallendo perché il precedente tentativo aveva creato un qualche tipo di blocco e quella transazione doveva essere ripristinata. Il plugin non fornisce alcun modo per farlo. Si deve usare il programma appcfg sulla linea di comando per il rollback. http://code.google.com/appengine/docs/java/tools/eclipse.html ha dettagli. Il problema che stavo affrontando riguardava le autorizzazioni a livello di sistema operativo su appcfg.sh. Ho dato il permesso di usare self usando chmod e potrei farlo funzionare.

4

Provare a eseguire appcfg.py con l'opzione di rollback. Vedere la docs:

appcfg.py [opzioni] rollback

annulla un aggiornamento parzialmente completata per una data applicazione. È possibile utilizzare questo se un aggiornamento è stato interrotto e il comando è che segnala che l'applicazione non può essere aggiornata a a causa di un blocco.

6

Non penso che queste risposte siano state di aiuto.

  1. utilizzando la riga di comando cd nella directory dell'applicazione. per me questo è

    cd/Siti/appengine_myapp

  2. Ora che avete fatto questo.

    appcfg.py --no_cookies [email protected] --passin far ritirare ./

  3. Si dovrebbe essere richiesta la password.

+0

proprio come un suggerimento aggiunto dovevo essere nella cartella src per il mio lavoro e su Windows ha funzionato solo con il prompt cmd non PowerShell o qualsiasi altra cosa – clifgray

11

Come il risultato di un errore interno del server durante la distribuzione app, ora sto lasciato con una transazione in sospeso, che ho bisogno di far ritirare prima che io possa distribuire nuovamente.

Creazione di directory di staging scansione per i file jsp. Scansione di file su disco locale. Inizio aggiornamento. java.io.IOException: errore nell'indirizzamento all'URL: 409 Conflitto Un'altra transazione per utente è già in corso per questa app e la versione principale . L'utente può annullare la transazione con il comando "rollback" di appcfg.py .

questo era come ho fatto (tutto dalla riga di comando), che è un metodo leggermente più semplice , che ha raggiunto lo stesso effetto .....

C: \ Documents and Settings \ Amit \ Documenti \ NewProject> "C: \ Program Files \ eclipse \ plugins \ com.google.appengine.eclipse.sdkbundle_1.2.5.v200909021031 \ AppEngine-java-sdk-1.2.5 \ bin \ appcfg" guerra rollback

Lettura dati di configurazione applicazione ...

2009-09-17 20: 47: 35.859 :: INFO: registrazione su STDERR tramite org.mortbay.log.StdErrLog Interazione iniziale del server per idebanet ... 0% Rollback dell'aggiornamento. Successo. pulizia dei file temporanei ...

C: \ Documents and Settings \ Amit \ Documenti \ NewProject>

Cortesia: JOHN

+0

questa risposta era proprio su. Grazie. – Mauro

4

per l'utente/linux mac: 1.cd/"sdkdirectory"/bin 2. chmod + x appcfg.sh 3. ./appcfg.sh -s appengine.google.com -e [email protected] far ritirare /Users/"...."/workspace/yourapp/war

0

per la distribuzione vostra applicazione utilizzando riga di comando, attenersi alla seguente procedura:

cd "/Library/Google/google_appengine" 
./appcfg.py update "path-to-project/src" 

ti verrà richiesto il tuo indirizzo email e la password.

0

Avevo problemi con l'esecuzione di quegli appcfg forniti da Eclipse. Ho dovuto installare Python + App Engine sdk per python e beneficiare delle funzioni di appcfg.py. Era su Windows però.