问题标签 [schemagen]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - JAXB JXC 为枚举生成模式,而不考虑 @XmlTransient
使用 JXC 模式生成 ant 任务,我似乎无法让它忽略枚举。我有几个枚举在内部用于表示与生成的 XML 无关的类型或次要配置值。
我可以使用枚举作为@XmlTransient 排除该字段以将其从对象的架构中排除,但仍会为枚举生成一个 simpleType 描述符!
例子:
生成的架构:
有人对如何让 JXC 忽略枚举有任何想法吗?它没有被任何 XML 映射属性或字段使用,并且枚举本身被标记为 @XmlTransient - 为什么它仍然是我的架构的一部分?
java - 是否可以让 maven-jaxb-schemagen-plugin 与 Java 7 一起使用?
当我尝试使用maven-jaxb-schemagen-plugin
java 7
我收到一个错误:
似乎AnnotationProcessorFactory
在 Java 7 中被删除/弃用了?是否可以使用此插件使 jaxb schemagen 工作?使用 JDK 7 时,是否有另一种方法可以从 JAXB 源代码生成模式?
command-line - 从命令行/类路径设置执行 Schemagen (Jena)
我正在学习 Jena API,我想使用 Schemagen 为我自己的词汇创建类似于 com.hp.hpl.jena.vocabulary 包中的类;
我在http://www.apache.org/dist/incubator/jena/apache-jena-2.7.0-incubating/下载了 Jena 。下载后,我将其解压缩并保持原样。
C:\Users\moi\NetBeansProjects\apache-jena-2.7.0-incubating\apache-jena-2.7.0-incubating 是包含 bat 文件夹、bin 文件夹、javadoc-arq 文件夹等的文件夹。
我在我的一个项目中使用 C:\Users\moi\NetBeansProjects\apache-jena-2.7.0-incubating\apache-jena-2.7.0-incubating\lib 中的所有库和一个相对链接测试了 Jena,它作品。
为了便于在命令行中使用,我将文件“MyKnowledgeBase.rdf”移到了 lib 文件夹中。
我从 lib 文件夹中尝试过
得到这个
所以我尝试设置类路径:
但我仍然有同样的错误。我也试过
当我做
我得到了我输入的内容
我尝试将 set CLASSPATH 与每个 jar 的绝对路径一起使用,但它也不起作用。
所以现在我不知道该怎么办。
在 Jena,我在 jena-core-2.7.0-incubating.jar 包“jena”中找到了 schemagen.class(使用 netbeans)
使用资源管理器我没有找到类文件。
我已经在命令行中运行了几个项目,执行 java -jar 所以 java 和命令行都可以
谢谢您的帮助
编辑:我删除了参数 -classpath 和 %CLASSPATH% 之间的空格,我得到了不同的东西 \o/ 仍然不起作用,但它正在进行中!
“无法识别的选项”和“无法创建 java 虚拟机”
Edit2:由于我无法解决这个问题,我用 netbeans 创建了一个新项目。我创建了 schemagen 类的副本,将其作为主类,将所有 jar 作为库包含在内。接着 :
java - 如何记录最后合同(通过 jaxb schemagen)网络服务?
我开发了一个网络服务,我的用户理所当然地希望看到文档。我更喜欢简单地记录我的代码,使用 javadoc 注释或显式注释,例如
或者
不支持上述内容,如下所示:
- JAXB-273 - 2006 请求从注释中生成 xs:documentation 元素
- JAXB-369 - 2007 请求从评论中制作 xs:documentation 元素
- SO-470001 - “你不能那样做”stackoverflow 问题
所以我知道我不能使用上述内容来评论我的服务。但是......当然还有一种方法可以以非手动方式进行。我必须为此手工制作所有的 XML 吗?如果这就是答案,为什么没有更多地关注将这个特性引入 JAXB 呢?对于企业级 Web 服务来说,这似乎是完全强制性的,对吧?
xsd - 带有枚举的 JAXB SchemaGen 在不同的包中
如何从引用不同包中的枚举的 JAXB 对象生成模式?
下面是一个例子:
枚举类
JAXB 类
包信息.java
蚂蚁目标
当我运行上面的示例时,我得到以下信息:
[schemagen] 异常的package-info.java 路径:package-info.java [schemagen] 从7个源文件生成schema [schemagen] 注解处理时遇到的问题;[schemagen] 请参阅下面的堆栈跟踪以获取更多信息。[schemagen] java.lang.NullPointerException [schemagen] at com.sun.tools.jxc.model.nav.APTNavigator$2.onDeclaredType(APTNavigator.java:428) [schemagen] at com.sun.tools.jxc.model.nav .APTNavigator$2.onClassType(APTNavigator.java:402) [schemagen] 在 com.sun.tools.jxc.model.nav.APTNavigator$2.onClassType(APTNavigator.java:456) [schemagen] 在 com.sun.istack.tools .APTTypeVisitor.apply(APTTypeVisitor.java:27) [schemagen] 在 com.sun.tools.jxc.model.nav.APTNavigator.getBaseClass(APTNavigator.java:109) [schemagen] 在 com.sun.tools.jxc.model .nav.APTNavigator.getBaseClass(APTNavigator.
我知道是枚举导致了错误,因为如果我切换到字符串,它就会消失。如何使用上面的示例生成模式,其中枚举位于相同的命名空间或不同的命名空间中?
xsd - schemagen.exe 生成具有不确定顺序的 xsd 架构
我使用 org.codehaus.mojo jaxb2-maven-plugin 为我的类生成 xsd 模式。插件站点 http://mojo.codehaus.org/jaxb2-maven-plugin/faq.html告诉我们,该插件使用 JDK 实用程序 schemagen.exe 进行生成。 问题是生成的 xsd 中的顺序不确定,并且取决于您运行插件的机器。
并生成方案:
但是当我的同事运行生成时,他得到了另一个命令:
我们用
- JDK 1.6.0_26
- jaxb2-maven-插件 1.3
- jaxb-impl 版本 2.1.12(由插件使用)
有没有办法控制这个顺序?
class - 忽略 jaxb schemagen 生成的类
我有两组课程。AI 组中的人想使用 schemagen 生成 XML 模式,而 BI 组中的人只是想忽略模式生成。我怎样才能做到这一点?我只注释了 groupA jaxb 相关的类。当尝试生成模式时,我得到组 B 的类的“没有无参数默认构造函数”。
nullpointerexception - schemagen NullpointerException
Java类:
- JDK版本:1.6.0_31
异常堆栈跟踪schemagen User.java
任何人都可以在这里帮助我吗?
soap - 如何通过 JAXB Schemagen 从扩展自 java.util.Date 的自定义 Java 类生成 xsd
我有一个自定义 java 类“CustomDate1”扩展了 java.util.Date,我想通过 Schemagen 为它生成 XSD 文件。但似乎在 XSD 文件中,“customDate1”没有扩展项,我不知道为什么,也许 JAXB 不支持扩展日期的类?
Java 类:
}
XSD 文件:
<xs:complexType name="customDate1">
<xs:sequence/>
</xs:complexType>
乔伊