3
メインメソッドからVerx 3 Verticleを起動するにはどうすればよいですか?私は単体テストから始める方法を理解しており、始めにguideは脂肪の入った瓶を作る方法を説明しています。しかし、どのようにすれば、デバッグ、プロファイリングなどの目的でメイン・メソッドから簡単に起動できますか?メインメソッドからVertx 3 Verticleを開始するにはどうすればよいですか?
メインメソッドからVerx 3 Verticleを起動するにはどうすればよいですか?私は単体テストから始める方法を理解しており、始めにguideは脂肪の入った瓶を作る方法を説明しています。しかし、どのようにすれば、デバッグ、プロファイリングなどの目的でメイン・メソッドから簡単に起動できますか?メインメソッドからVertx 3 Verticleを開始するにはどうすればよいですか?
は単にEDIT
public static void main(String[] args) {
Vertx vertx = Vertx.vertx();
vertx.deployVerticle(MyVerticle.class.getName());
}
または
public static void main(String[] args) {
Vertx vertx = Vertx.vertx();
vertx.deployVerticle(new MyVerticle());
}
の操作を行います。ウィルによって示唆されるように、ここではそれが成功するまで考慮し、ブロックにメインスレッドを結果を取る例です。
BlockingQueue<AsyncResult<String>> q = new ArrayBlockingQueue<>(1);
Vertx.vertx().deployVerticle(new Application(), q::offer);
AsyncResult<String> result = q.take();
if (result.failed()) {
throw new RuntimeException(result.cause());
}
結果を含むハンドラを使用するオーバーロードされたメソッドを使用することは常に価値があります。さもなければ、Verticleが起動に失敗したかどうかはわかりません。 – Will
@ウィル:ありがとう、これを考慮に入れた例を加えた。 –
@AlexanderTorstling 'result.cause()'についてもっと明確にすることができますか?どこから来ているのか分かりません。 – thisdotvoid