簡體   English   中英

我如何告訴我的應用程序不應使用jar中的外部服務提供商?

[英]How can I tell my application that it shouldn't use an external Service Provider from a jar?

由於某些原因,我們需要Oracle XDK中的xdb.jar。 此jar取決於xmlparserv2.jar。 實際的問題是xmlparserv2.jar帶有一些提供程序配置文件(META-INF / services)。 該jar包含javax.xml.transform.TransformerFactoryjavax.xml.parsers.SAXParserFactoryjavax.xml.parsers.DocumentBuilderFactory的服務提供程序。 這些實現(來自oracle。*)不能與我們軟件的其他部分一起使用(它們需要標准工廠)。

您可以使用單獨的類加載器將jar與應用程序的其余部分隔離。 這個問題涵蓋了它。

您可以從xmlparserv2.jar中刪除這些類

參見此處 -“ JNLP類路徑優先級1.5與1.6”

我通過刪除服務(META-INF / services)解決了問題。 我們運行了單元測試,一切正常。 甚至我們軟件的依賴於xmlparserv2.jar / xdb.jar的部分。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM