Как я могу сказать своему приложению, что оно не должно использовать внешнего поставщика услуг из jar? - PullRequest
1 голос
/ 20 июня 2011

По какой-то причине нам нужен xdb.jar из Oracle XDK.Этот jar зависит от xmlparserv2.jar.Проблема заключается в том, что xmlparserv2.jar поставляется с некоторыми файлами конфигурации провайдера (META-INF / services).В банке есть службы для javax.xml.transform.TransformerFactory , javax.xml.parsers.SAXParserFactory и javax.xml.parsers.DocumentBuilderFactory .Реализации (из oracle. *) Не работают вместе с некоторыми другими частями нашего программного обеспечения (им нужны стандартные фабрики).

Ответы [ 4 ]

1 голос
/ 21 июня 2011

Вы можете использовать отдельные загрузчики классов, чтобы изолировать файлы jar от остальной части приложения. Этот вопрос об этом покрывает.

0 голосов
/ 31 октября 2011

Я решил проблему путем удаления сервисов (META-INF / services).Мы запустили наши юнит-тесты, и все заработало.Даже те части нашего программного обеспечения, которые зависят от xmlparserv2.jar / xdb.jar.

0 голосов
/ 20 июня 2011

См. Здесь - "Приоритет пути к классу JNLP 1,5 против 1,6"

0 голосов
/ 20 июня 2011

Вы можете просто удалить эти классы из xmlparserv2.jar

...