Я использую Jaxb и org.jvnet.jaxb2_commons.xjc.XJC2Task
для генерации классов из заданного WSDL.
Реализуемая схема содержит несколько классов, которые наследуются друг от друга.Проблема в том, что плагин jaxb генерирует все классы как final, но все еще сохраняет информацию о наследовании - поэтому генерируемый код содержит несколько экземпляров
public final class BaseClass {}
public final class SomeClass extends BaseClass {}
, которые не компилируются.
Я не могунайдите любую значимую документацию для любых аргументов, чтобы передать задачу, чтобы сделать классы не окончательными.Вот как мы делали это в наших build.gradle
до сих пор:
jaxb {
xsdDir = "src/main/resources/schemas"
xjc {
destinationDir = "build/generated/java"
producesDir = "build/generated/java"
generatePackage = 'com.company.generated.soap.types'
taskClassname = 'org.jvnet.jaxb2_commons.xjc.XJC2Task'
args = ['-Xinheritance', '-Xannotate', '-immutable', '-imm-builder']
}
}
есть ли способ сделать эту работу?