2010-08-27 48 views
0

我將我的項目包裝在OSGi包中(只需從Activator.start()調用我的第一個啓動方法)。 在我的項目中,我使用ORM ActiveObjects和c3p0池。所有的項目依賴項(jar librarys)都在類路徑中。如果我用c3p0運行我的項目,則需要大約5分鐘才能查詢數據庫。沒有c3p0它是正確的。 什麼是問題? 非常感謝!c3p0循環和OSGi

回答

1

也許你的問題與OSGi特定的類加載機制有關。在OSGi中,依賴關係庫不能位於平面java類路徑中,而必須位於bundle類路徑中。爲此,我們通常爲每個庫創建一個捆綁版本,將庫jar公開爲OSGi「包」。

+0

也許你是對的。你能解釋我怎麼辦?謝謝! – 2010-08-27 09:19:27

+0

這取決於您正在使用的OSGi運行時。但主要想法是創建一個包含庫jar文件的OSGi包。然後將此文件添加到捆綁類路徑並使用捆綁清單導出要從jar文件導出的包。這種「庫」包不包含任何源代碼,只是將一個jar庫「包裝」在一個包中。 – 2010-08-27 11:16:02