1

すべての記事を読んだ後、問題の解決策が見つかりませんでした。

  1. Heroku で正常に動作する Java Play Web アプリがあります。Procfile に web: xxx プロセスがある場合
  2. 同じアプリで、いくつかのジョブを定義しました。
    • play.Job を拡張する MyJob クラスがあります
    • Main クラス while(true) 待機して MyJob を実行します。

私のProfileはこのようになります。

web:    play run --http.port=$PORT $PLAY_OPTS
worker: java -cp target/classes;target/dependency/* jobs.MyJob

これはMavenプロジェクトクラスではないため、依存ディレクトリが存在しないことを理解しています。

しかし、では、ワーカーをどのように設定すればよいでしょうか: java xxxx command?

4

2 に答える 2

0

遊ぶ!ジョブはWebアプリ内で実行されます。それらをherokuアプリで使用する場合は、専用のワーカーを起動せずに、Webアプリに埋め込む方がよいでしょう。これを使用すると、herokuでWebdynoのみを使用できます。

でジョブに注釈を付けるだけ@OnApplicationStartで、アプリケーションで実行されます。

于 2012-12-13T07:42:38.757 に答える
0

Job クラスに注釈を付けていますか? Play の開始時にジョブを開始するには、次のようにします。

@OnApplicationStart
public class Bootstrap extends Job {

または @Every または @On アノテーションを使用します。

@On("0 0 12 * * ?")
public class Bootstrap extends Job {

@Every("1h")
public class Bootstrap extends Job {
于 2012-12-13T00:09:38.380 に答える