我在哪里可以找到处理目录文件的 jaxb gradle 插件或自定义任务?
Where can I find a jaxb gradle plugin or custom task that handles a catalog file?
我试了好几次,都得到了
java.lang.NoClassDefFoundError: com/sun/xml/bind/api/ErrorListener
...从自定义任务中,我猜是因为 class 已被删除而不是在 JAXB API 的最新版本中被弃用,或者从我得到的 jacobono 插件中...
https://github.com/jacobono/gradle-jaxb-plugin/issues/13
一岁了还没固定? :-|
所以...还有其他方法或解决方法吗?我想我们可以重写我们的 XSD,这样我们就不需要目录文件了,但 IDK 会导致什么其他问题。
我很久以前遇到过类似的问题,试图将 JAXB 生成与 XJC 集成到我的构建中。我查看了可用的 XJC 插件(我想我只找到了一个)。但是,我发现该插件的界面很尴尬,它需要重构我的应用程序以适应插件的限制。插件的作者认为我的问题不相关。
我终于意识到,Gradle的灵活性常常让这样的问题变得无关紧要。我放弃了使用那个 XJC 插件并简单地定义了我自己的直接调用 "ant.xjc" 任务的自定义任务(Gradle 提供了所有开箱即用的 "native" Ant 任务)。我将对 ant.xjc 任务的调用放入一个采用模式文件和命名空间的函数中,我的自定义任务为我的每个 XML 模式多次调用该方法。
执行此操作时应注意的一个细节,尤其是 ant.xjc 任务,是您必须小心指定的类路径。借助 Gradle 定义非常离散的依赖项的能力,您可以指定一个 "xjc" 配置,该配置仅包含 XJC 编译器在运行时所需的 XML jar 文件。应用程序在运行时几乎不需要这些 jar 文件,因此您可以避免无缘无故地部署这些 jar 文件。
我试了好几次,都得到了
java.lang.NoClassDefFoundError: com/sun/xml/bind/api/ErrorListener
...从自定义任务中,我猜是因为 class 已被删除而不是在 JAXB API 的最新版本中被弃用,或者从我得到的 jacobono 插件中...
https://github.com/jacobono/gradle-jaxb-plugin/issues/13
一岁了还没固定? :-|
所以...还有其他方法或解决方法吗?我想我们可以重写我们的 XSD,这样我们就不需要目录文件了,但 IDK 会导致什么其他问题。
我很久以前遇到过类似的问题,试图将 JAXB 生成与 XJC 集成到我的构建中。我查看了可用的 XJC 插件(我想我只找到了一个)。但是,我发现该插件的界面很尴尬,它需要重构我的应用程序以适应插件的限制。插件的作者认为我的问题不相关。
我终于意识到,Gradle的灵活性常常让这样的问题变得无关紧要。我放弃了使用那个 XJC 插件并简单地定义了我自己的直接调用 "ant.xjc" 任务的自定义任务(Gradle 提供了所有开箱即用的 "native" Ant 任务)。我将对 ant.xjc 任务的调用放入一个采用模式文件和命名空间的函数中,我的自定义任务为我的每个 XML 模式多次调用该方法。
执行此操作时应注意的一个细节,尤其是 ant.xjc 任务,是您必须小心指定的类路径。借助 Gradle 定义非常离散的依赖项的能力,您可以指定一个 "xjc" 配置,该配置仅包含 XJC 编译器在运行时所需的 XML jar 文件。应用程序在运行时几乎不需要这些 jar 文件,因此您可以避免无缘无故地部署这些 jar 文件。