Das jaxb2-Vererbungs-Plugin erweitert keine Klasse in /src/test/javaJava

Java-Forum
Anonymous
 Das jaxb2-Vererbungs-Plugin erweitert keine Klasse in /src/test/java

Post by Anonymous »

Ich arbeite an einem Java/Maven-Projekt und verwende das jaxb2-Vererbungs-Plugin, um übergeordnete Klassen für von xjc generierte Java-Klassen zu definieren.
Ich habe dies in meinem xsd:

Code: Select all

    



input.generation.common.IXmlBlah


input.generation.common.XmlAbstractBlah




Es wird eine Klasse generiert, die XmlBlah erweitert. Das Problem besteht darin, dass die generierte Klasse XmlBlah XmlAbstractBlah nicht finden kann. Es gibt keine Probleme, die Schnittstelle zu finden.
Eine Aktualisierung des Projekts zeigt jedoch nur, dass in Eclipse kein Kompilierungsproblem für XmlBlah gemeldet wurde: Maven kann den Import nicht finden, Eclipse hingegen schon.
Die generierte Klasse befindet sich in target/generated-test-sources.
Die zu implementierende Schnittstelle befindet sich in src/main/java
Die zu erweiternde Klasse befindet sich in src/test/java.
Ich habe das ein wenig getestet und Folgendes herausgefunden:
  • Wenn die zu erweiternde Klasse in src/main/Java liegt, dann funktioniert alles
  • wenn die zu erweiternde Klasse in src/test/java ist, Eclipse kann es finden, aber Maven meldet einen Kompilierungsfehler, da es nicht in der Lage ist, es von target/generated-test-sources zu finden.
Anscheinend kann Maven die Schnittstelle in /src/main/java finden, aber nicht die übergeordnete Klasse in /src/test/java. Oder haben target/generated-test-sources keinen Zugriff auf src/test/java?
Einige weitere Informationen:
Dies ist der Teil von pom.xml, der die Testressourcen anordnet:

Code: Select all


org.codehaus.mojo
build-helper-maven-plugin
3.4.0


add-test-source
generate-test-sources

add-test-source




${project.build.directory}/generated-test-sources/java/





und das ist die pom.xml-Konfiguration der Klassengenerierung:

Code: Select all

            
org.jvnet.jaxb2.maven2
maven-jaxb2-plugin
0.15.3

src/test/resources
${project.build.directory}/generated-test-sources/java
true
false
true

-Xinheritance



org.jvnet.jaxb2_commons
jaxb2-basics
0.11.1





input

generate



testInput.xsd


testInput.xjb






Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post