繁体   English   中英

在 Java 中以编程方式从 XML 生成 XSD

[英]Generate XSD from XML programmatically in Java

我正在寻找一个轻量级的库,它允许我从 Java 中的 XML 生成 XSD(没有命令行工具)。 我知道这不是一种干净的生成方式,但在这种情况下我需要这样做。 此外,XML 在结构方面非常简单。

我已经研究过 Trang,但除了如何从命令行调用它之外,没有 API 文档。

我还检查了 xsd-gen,但该库的问题是需要修改我找不到的源代码中的一些包声明。

还有其他建议吗?

我是工具xsd-gen 的作者 我也将工具转换为库,并将工件上传到 Maven Central:

<dependency>
    <groupId>org.wiztools</groupId>
    <artifactId>xsd-gen</artifactId>
    <version>0.2.1</version>
</dependency>

现在可以简单地在应用程序中用作库:

import org.wiztools.xsdgen.XsdGen;
import java.io.File;
import java.io.FileOutputStream;

...

XsdGen gen = new XsdGen();
gen.parse(new File("in.xml"));
File out = new File("out.xsd");
gen.write(new FileOutputStream(out));

我包含了xsd-gen 源代码,它对我有用。 你只需要

  1. TypeInferenceUtil.java
  2. XsdGen.java

我使用的包声明(用于 Gradle)是:

compile("com.io7m.xom:xom:1.2.10")
compile("org.wiztools.commons:wiztools-commons-lib:0.4.1")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM