Может быть более простой способ, но один из способов - сделать копии XSD и удалить все типы XML из копий, за исключением корневых типов, которые вы хотите, с их зависимостями. Затем примените xjc к копиям вместо оригинальных.
Вы можете автоматизировать этот процесс с помощью XSLT и создавать инструменты автоматизации, такие как Maven, Gradle, Ant и т. Д. Сначала вы пишете таблицу стилей XSLT, которая преобразует XSD для копирования только корневых типов с зависимостями, и сохраняете результат во временном местоположении. (например, папка target / generate-sources с Maven). Затем, например, с помощью Maven, вы автоматизируете процесс с помощью плагинов сборки в вашем pom.xml:
- Запустите XSLT-преобразование с помощью XML-плагина Maven , используя предпочтительно Saxon в качестве XSLT-процессора .
- Запустите Плагин JAXB2 Maven для создания классов Java из новых копий XSD (с параметрами schemaDirectory / schemaInclude).