2010-08-18 78 views
0

我有一個Java應用程序。我創建了一個OSGi包,並在Activator.start中添加了MyMain Class.main().Application已啓動,但它與數據庫連接有關。 'java.sql.SQLException:客戶端嘗試檢出Connection時超時。' 如果我作爲應用程序啓動我的應用程序,它工作正常。 有什麼不對? 非常感謝!OSGi軟件包啓動問題

+1

請更多詳細信息 - main()方法究竟執行了什麼?所有的應用程序代碼都在一個包中? – 2010-08-18 08:20:59

+0

是的,我在我的應用程序中添加所有的捆綁。並在Activator啓動它。 – 2010-08-18 08:59:53

+0

任何數量的東西都可能出錯。您需要發佈代碼。 – 2010-08-21 22:32:43

回答

0

不確定你做了什麼,但使用OSGi時不需要主要的方法。一個主要的方法是啓動你的程序,在這種情況下是OSGi容器,而不是你的代碼。容器將通過運行Activator類來運行你的代碼,並且在這裏你可以實例化你自己的應用程序特定的對象並且調用適當的方法。因爲你沒有發佈代碼(你應該),我只能猜測你是在你的主要方法而不是普通方法中創建你的數據庫連接,這就是爲什麼它不工作,因爲主要是不叫。