プロジェクトのアップロード中にネットワーク障害が発生し、アップロードプロセスが31%しか完了しなかったため、停止する必要がありました。クリックしてアプリケーションをGoogleApp Engineにデプロイすると、次のメッセージが表示されます。
com.google.appengine.tools.admin.HttpIoException: Error posting to URL:
https://appengine.google.com/api/appversion/create?app_id=programworks&version=1&
409 Conflict
Another transaction by user suhailgupta03 is already in progress for app:
s~programworks, version: 1. That user can undo the transaction with
"appcfg rollback".
Unable to update app: Error posting to URL: https://appengine.google.com/api/appversion/create?app_id=programworks&version=1&
409 Conflict
Another transaction by user suhailgupta03 is already in progress for app:
s~programworks, version: 1. That user can undo the transaction with "appcfg rollback".
シェルプロンプトを開き、そこに入力しますappcfg rollback
しかし、このコマンドが見つからないというメッセージが表示されます。netbeansのプラグインとしてGoogle AppEngineをインストールしました。
私がグーグルアプリエンジンの瓶を保管してきた道:/home/non-admin/appengine-Java-sdk-1.6.6/lib/
前のプロセスをロールバックするにはどうすればよいですか? warファイルをアップロードする必要があります。
appcfg.sh rollback
(path_to_your_app_engine_sdk/bin/
にあります)が必要です。 appcfg
は、ランタイムのタイプ(Python、Java、Go)ごとに異なるバリアントで提供されるため、推奨されるコマンドは少し一般的です。
何らかの理由で、プロジェクトのwarディレクトリ全体に簡単にアクセスできない場合(たとえば、IDEは.warファイルしか提供しない場合)、次のことを実行できます。以下:
war
という名前のディレクトリを作成します。WEB-INF
という名前を付けます。WEB-INF
に、2つのxmlファイル(web.xml
とappengine-web.xml
)をドロップします。これらには、デプロイされたweb.xml
ファイルとappengine-web.xml
ファイルの内容がそれぞれ含まれている必要があります。次に、次のシェルコマンドを実行します(これは、App Engine Java SDK)のbin
ディレクトリから実行することを前提としています)。
[non-admin@user bin]$ ./appcfg.sh rollback /home/non-admin/NetBeansProjects/PersonalSite/web/war
Go Appengineツールを使用している場合は、次を実行する必要があります。
$ cd [your go_appengine directory]
$ ./appcfg.py rollback [your app directory with app.yaml in it]
Windowsを使用している場合は、上記と同じ手順に従って、DOSプロンプトでコマンドを実行します。
C:\ Eclipse-jee-helios-win32\Eclipse\plugins\com.google.appengine.Eclipse.sdkbund le_1.7.3\appengine-Java-sdk-1.7.3\bin> appcfg.cmdロールバック "C:\ home\myweb\war"
別の簡単な方法を以下に示します。
編集:
dg99の質問に答えるには:変更する必要のあるバージョンコードはあなた次第です(それはあなたのアプリケーションのバージョンです)
EclipseとMavenビルド環境を使用している場合は、mavenコマンドでアプリケーションをアップロードしている可能性がありますappengine:update、そうですか?
そして、そのような「409コンフリクト」のような問題が発生したとき。 Eclipseでmavenコマンドを使用できます-> project-> run as-> maven build ...-> "appengine:rollback"
これを試して。このようにして問題を解決しました
これは私のために働きます! (Win OS)
C:\ Eclipse-jee-helios-win32\Eclipse\plugins\com.google.appengine.Eclipse.sdkbund le_1.7.3\appengine-Java-sdk-1.7.3\bin> appcfg.cmdロールバックC:\ home\myweb \戦争
私にとって、app.yamlが置かれている開発ディレクトリから次のことがうまくいきました。
appcfg.py rollback .
Python SDKを使用していますが、<app-directory>
は<war-location>
と呼ばれているため、Javaでは異なる場合があります。
しばらくロールバックを試みても成功しませんでした(ユーザー/パスを際限なく求められました)2つのフェーズ/ファクター認証が原因である可能性があると思いました。
したがって、次の方法ですべてを解決しました。
D:\Java\Eclipse\plugins\com.google.appengine.Eclipse.sdkbundle_1.8.3\appengine-Java-sdk-1.8.3\bin>
でコマンドプロンプト(cmd.exe)を開きます(またはappcfg.cmd
の場所を別の場所で探します)
次のように入力します:appcfg.cmd --oauth2 rollback D:/Java/workspace/my_app/war
次に、ブラウザでoauth2トークンの入力を求められ、コピーして、貼り付けるよりもcmdに戻りました。
それでおしまい! App Engineへのデプロイが再び機能します!
Android Studio:で開発されたバックエンドにこれを使用します
cd project_path/project_name/module_name/src/main
appcfg.sh rollback webapp
コマンドプロンプトを使用してWindows7でロールバックするために従うべき手順は次のとおりです。
1)最初にpythonの環境変数を設定します(コマンド「python」がコマンドPromptによって受け入れられるようにします)。
2)次に、「python」give_space「appcfg.pyファイルへのパス」give_space「rollback」give_space「プロジェクトへのパス」と入力します。(パスは引用符で囲んで指定する必要があります)。
Mavenを使用している場合は、appengine:rollback
コマンドは機能します。これは、EclipseMavenプロジェクトの場合でも機能します。
Eclipse Mavenでロールバックするには、次のプロセスに従います-
実行->ビルド->目標(appengine:rollback)->適用->実行
上記で明らかにされた答えのいくつかとして確認することができます。
mvn appengine:update
を使用してデプロイする場合は、mvn appengine:rollback
を使用してロールバックを実行できます。