Github user darrenfoong commented on the issue:
https://github.com/apache/geode/pull/668
Hi Jared, thank you for your feedback.
The initial use case that I was thinking of involved a user wanting to:
- use Geode with another JDK (which doesn't have the
`com.sun.org.apache...` Xerces implementation that the Oracle JDK uses), or
- use Geode in an application where he/she wants to use the Apache Xerces
implementation (which will be a dependency of the application) and sets the
system property `javax.xml.parsers.SAXParserFactory` to
`org.apache.xerces.jaxp.SAXParserFactoryImpl`.
In these cases `xercesImpl` is part of the environment (JDK, app) so I
chose to use `xercesImpl` at only test runtime and "load" it via
`System.setProperty()` in my unit tests.
I don't see why it's needed at test compile time and I don't really
understand your point about people building with (and I presume, for) a JDK
that doesn't include Xerces: in that case, shouldn't `xercesImpl` be a
dependency for `main` too?
I do symphatise with Xerces hell though!
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---