We've been seeing some build failures on some machines due to an issue with OpenJPA (specifically, the changes made in
We see these two cryptic errors in the output from the build:
[INFO] — openjpa-maven-plugin:2.2.2:enhance (enhancer) @ oozie-core ---
An error occurred while attempting to determine the version of "file:/var/lib/jenkins/workspace/build/oozie/4.1.0-SNAPSHOT/source/core/target/classes/META-INF/persistence.xml".
[ERROR] Failed to execute goal org.apache.openjpa:openjpa-maven-plugin:2.2.2:enhance (enhancer) on project oozie-core: Execution enhancer of goal org.apache.openjpa:openjpa-maven-plugin:2.2.2:enhance failed: org.apache.openjpa.persistence.PersistenceProductDerivation:java.lang.ClassCastException: org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration -> [Help 1]
I saw that
RAVE-245 had a similar error and their solution was to add Xerces as a dependency on the OpenJPA plugin. This prevents a classpath env issue from sometimes choosing the built-in buggy version of Xerces that Java is using by default (see OOZIE-1017), and instead to use the better version that we've been using elsewhere.