我正在尋找像ServiceLoader這樣的東西,但它不依賴於SPI文件,所有的服務實現都應該被枚舉,然後添加到某個類加載器的路徑中,以便找到。作爲ServiceLoader替代方案,還可以在Java中使用哪些功能?
假設有一個應用程序,它具有接口和一些服務的實現。可以使用什麼框架,允許您將新的JAR添加到應用程序中,該應用程序包含一些新的實現,並且它們可以自動添加到該應用程序內所有類加載器的類路徑中?所有的類加載器在這裏都非常重要,因爲如果這是一個NetBeans模塊應用程序,那麼NetBeans平臺會有奇怪的魔力,並且您永遠不知道哪個類加載器被哪個線程使用,以及哪個類路徑等等。 ,如果應用程序不需要重新啓動以查找新的JAR,但這不是一個重要的要求。
我已經聽說過OSGi,但這看起來太大了,我只需要它的1%的功能。
感謝您的任何建議!
JSPF看起來非常有前途的功能列表上,並似乎很簡單!我要去試試它......謝謝! – 2010-07-08 15:21:12
它真的很有效!甚至可以與NetBeans一起使用!大!我現在更喜歡現成的解決方案。如果我有時間,我會嘗試寫一個Guice擴展。 – 2010-07-12 12:45:10