1

Play Framework 2 でコマンド ライン タスクを定義することは可能ですか? 私が尋ねている理由は、私の Play プロジェクトから標準出力に XML を生成する実行可能ファイルが必要だからです。私が制御していない外部アプリケーションがあり、それを実行し、XML を処理するために出力をパイプします。現時点では、XML をアクションに記述し、"wget -qO- http://...." でフェッチするだけですが、これは理想とはほど遠いものです。また、これを本番環境にもデプロイできる必要があります。

私は解決策を広範囲に探しましたが、手ぶらで来ました。

4

1 に答える 1

0

play プロジェクトから実行可能な jar を作成するのは理想的ではないと思います。XML を作成するために必要なロジックは、再利用できる独自のライブラリに配置する必要があります。

Play アプリはこのライブラリに依存することができ、実行可能な jar を作成できる新しいプロジェクトを作成することもできます (これもライブラリに依存します)。

例えば:

xml-generator-lib

play-app => dependsOn xml-generator-lib

my-executable-jar => dependsOn xml-generator-lib

そうは言っても、実行可能な jar を作成できる簡単なプレイ アプリは次のとおりです: https://github.com/edeustace/executable-play-app

sbt-assemblyプラグインを使用して、すべての jar を 1 つにまとめます。また、「メイン」クラスをオーバーライドして、テンプレートの 1 つをレンダリングするクラスを指します。また、アセンブルされた jar 内で重複するファイルを管理する必要もあります。

Play フレームワークの一部は、このコンテキストで (サーバーなどなしで) 実行すると機能しない可能性があると思われます。

于 2014-01-19T21:44:30.250 に答える