Problem with jaxb2-maven-plugin and multiple xsd schemas generation

216 Views Asked by At

I have created a micro Maven project that reproduce exactly my problem.

SchemaGen Maven Project on GitHub

I have multiple java classes (with Xml annotations) and I want to generate corresponding xsd schemas via jaxb2-maven-plugin.

When I do "mvn clean compile" I got this error :

[ERROR] : class org.apache.xml.serializer.ToXMLSAXHandler cannot be cast to class org.apache.xml.serializer.SerializationHandler (org.apache.xml.serializer.ToXMLSAXHandler is in unnamed module of loader java.net.URLClassLoader @314b7945; org.apache.xml.serializer.SerializationHandler is in unnamed module of loader java.net.URLClassLoader @68c87fc3)

If I remove this Xalan dependency, all works perfectly.

<dependency>
  <groupId>xalan</groupId>
  <artifactId>xalan</artifactId>
  <version>2.7.2</version>
</dependency>

Important : I need to keep this Xalan dependency on my real project!

Important 2: If I comment one of the two executions on pom.xml, xsd generation works good

Important 3: I'm using Java OpenJdk 15

How can I keep Xalan dependency and get multiple xsd schemas generation works?

Thanks!

1

There are 1 best solutions below

0
Luca Zoffoli On

I finally solved my problem by adding "scope runtime" in Xalan dependency :

<dependency>
  <groupId>xalan</groupId>
  <artifactId>xalan</artifactId>
  <version>2.7.2</version>
  <scope>runtime</scope>
</dependency>

Now xsd schemas generation works properly.