1

Scala Play フレームワーク 2 に基づいて Web API を作成しました。以前は、Tomcat を使用して本番環境にデプロイするために、SBT プラグインを使用してwarファイルを生成しました。SBT ネイティブ パッケージャー プラグインを使用して、Play プロジェクトからネイティブ パッケージをビルドできるようになりました。これを使用して、Web アプリから debian パッケージを生成しました。

しかし、私はそれがどのように機能するのか理解していません。debian パッケージを生成してインストールし、デーモンを起動できましたが、API がリクエストをリッスンしていないようです。

最初のケースでは、Tomcat は Play アプリを含む war ファイルをホストし、HTTP 接続を管理します。Tomcat でwarファイルのように適切に動作するために、debian パッケージに不足している部分があるように感じます。

問題は、ネイティブ パッケージャー プラグインを使用してスタンドアロンの HTTP API をデプロイするにはどうすればよいかということです。HTTP 接続を処理するのは何ですか? 私のプロジェクトには何が欠けていますか?

前もって感謝します

4

1 に答える 1

1

Play アプリケーションは、独自の軽量 http サーバーを使用して実行されます。

スタンドアロン プロジェクト課題をビルドするには

sbt dist

またはアクティベーターを使用している場合

activator dist

これにより、ディレクトリtarget/universal/your-app.zipが作成されます

コンテンツを解凍すると、スタンドアロンのアプリケーション構造が見つかります

/bin
/lib
/conf
/share

サーバーを起動するシェルスクリプトを見つけることができます

bin/your-app
bin/your-app.bat (windows)

war ファイルへの配布は削除されたようです。同様の質問がここで尋ねられます: JPA を頻繁に使用する場合でも、play を war ファイルとしてサーブレットコンテナーにデプロイしますか?

于 2015-02-16T22:15:21.620 に答える