As said before, I have tested this approach (on AS, as well as by adapting the test classpath using Surefire) and it works as described.

I've pushed a commit to https://github.com/gunnarmorling/hibernate-validator/tree/HV-784-without-EL which excludes the EL dependencies from the test class path. On that branch, when building the engine module, exactly those tests are failing which require EL, while all others continue to pass. The tests requiring EL fail with "java.lang.NoClassDefFoundError: javax/el/ELContext" at InterpolationTerm.getInstance(InterpolationTerm.java:68) which is where `ElInterpolationTerm` is instantiated.

Btw. we employed the same pattern quite a while ago for making JAXB not required on Java 5 when not using the XML config (see [HV-302](https://hibernate.atlassian.net/browse/HV-302)). So at least since the Java 5 this approach works.

That said, I've tested this on the Oracle VM only, i.e. other JVMs might try to eagerly load all referenced classes and fail (the JLS doesn't mandate a particular behavior when to do the loading). If you think it's worth it, we could do the loading reflectively, but at least on the Oracle VM >= 5 the approach works as described. 

Writing a dedicated unit test for this might become a bit tricky since we would require a way to run this particular test without the EL dependencies. So the test would have to live in a dedicated module or be run with a special Maven profile.