2014-04-15 33 views
0

我是Vert.x的新手,我對如何運行\ deploy Vert.x應用程序感到困惑。從start()方法運行Verticle

我習慣於用一個帶有靜態main()方法的主類來編寫服務器,它執行我所有的初始啓動代碼,如:連接到數據庫,讀取配置文件,初始化內部服務並最終創建監聽用於接受新連接的套接字。

例如:

public class Server { 

    public static void main(String args[]) { 
     Server server = new Server(); 

     server.run(); 
    } 

    public void run() { 
    // load configuration 
     .... 

    // Connect to DB 
    .... 

    // Initialize internal services 
    .... 

    // Create listening socket on server port 
    ... 

    // and more... 
} 

現在我的問題:

Vert.x強迫我做我的主類擴展Verticle類和重寫start()方法 初始化監聽套接字。

所以現在我所有的初始化過程必須在此start()方法內進行。

這是否合理?

就像我已經習慣了,而是使用「頂點」應用

我失去的東西我永遠不能運行通過命令行我的應用程序?

回答

0

是的,你是對的。一個vertx應用程序不過是一組verticle實例中運行的verticle。

如果你希望你的應用有主要方法和往常一樣,那麼你可以使用vertx嵌入模式即main方法裏面你使用API​​開始vertx實例,然後啓動該實例中verticles。

查看嵌入指南:http://vertx.io/embedding_manual.html