- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Maven JAXB2 插件从我的 XSD 生成 Java 类。
为此,我使用多次执行,如下所示:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxb2-maven-plugin</artifactId>
<version>2.2</version>
<executions>
<execution>
<id>xsd1</id>
<goals>
<goal>xjc</goal>
</goals>
<configuration>
<arguments>
<argument>-b</argument>
<argument>${basedir}/src/main/xjb/xsd1.xjb</argument>
</arguments>
<sources>
<source>${basedir}/src/main/xsd/xsd1.xsd</source>
</sources>
</configuration>
</execution>
<execution>
<id>xsd2</id>
<goals>
<goal>xjc</goal>
</goals>
<configuration>
<arguments>
<argument>-b</argument>
<argument>${basedir}/src/main/xjb/xsd2.xjb</argument>
</arguments>
<sources>
<source>${basedir}/src/main/xsd/xsd2.XSD</source>
</sources>
<clearOutputDir>false</clearOutputDir>
</configuration>
</execution>
</executions>
</plugin>
我的XJB:
<jxb:bindings version="2.1" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
schemaLocation="../xsd/xsd1.xsd" node="/xsd:schema">
<jxb:schemaBindings>
<jxb:package name="com.example.xsd1" />
</jxb:schemaBindings>
<jxb:bindings node="//xsd:element[@name='Name']/xsd:complexType">
<jxb:class name="NameXsd1" />
</jxb:bindings>
</jxb:bindings>
<jxb:bindings version="2.1" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
schemaLocation="../xsd/xsd2.xsd" node="/xsd:schema">
<jxb:schemaBindings>
<jxb:package name="com.example.xsd2" />
</jxb:schemaBindings>
<jxb:bindings node="//xsd:element[@name='Name']/xsd:complexType">
<jxb:class name="NameXsd2" />
</jxb:bindings>
</jxb:bindings>
当我执行 mvn clean install
时,出现以下错误:
[ERROR] file:/D:/Dev/myproject/src/main/xjb/xsd1.xjb [3,92]
com.sun.istack.SAXParseException2; systemId: file:/D:/Dev/myproject/src/main/xjb/xsd1.xjb; lineNumber: 3; columnNumber: 92; "file:/D:/Dev/myproject/src/main/xsd/xsd1.xsd" is not part of this compilation. Is it a mistake for "file:/D:/Dev/myproject/src/main/xsd/xsd2.xsd" ?
at com.sun.tools.xjc.reader.internalizer.Internalizer.reportError(Internalizer.java:624)
at com.sun.tools.xjc.reader.internalizer.Internalizer.reportError(Internalizer.java:618)
at com.sun.tools.xjc.reader.internalizer.Internalizer.buildTargetNodeMap(Internalizer.java:261)
at com.sun.tools.xjc.reader.internalizer.Internalizer.transform(Internalizer.java:146)
at com.sun.tools.xjc.reader.internalizer.Internalizer.transform(Internalizer.java:107)
at com.sun.tools.xjc.reader.internalizer.DOMForest.transform(DOMForest.java:439)
at com.sun.tools.xjc.ModelLoader.buildDOMForest(ModelLoader.java:345)
at com.sun.tools.xjc.ModelLoader.loadXMLSchema(ModelLoader.java:377)
at com.sun.tools.xjc.ModelLoader.load(ModelLoader.java:174)
at com.sun.tools.xjc.ModelLoader.load(ModelLoader.java:119)
at com.sun.tools.xjc.Driver.run(Driver.java:354)
at org.codehaus.mojo.jaxb2.javageneration.AbstractJavaGeneratorMojo.performExecution(AbstractJavaGeneratorMojo.java:402)
at org.codehaus.mojo.jaxb2.AbstractJaxbMojo.execute(AbstractJaxbMojo.java:257)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:133)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:108)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:76)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:116)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:361)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:155)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:584)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:213)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:157)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
有什么想法吗?
谢谢!
最佳答案
jaxb2-maven-plugin
考虑您的两个 XJB 文件。
您必须配置xjbExcludeFilters
或 xjbSources
仅包含一个文件:
<xjbSources>
<xjbSource>src/main/xjb/xsd1.xjb</xjbSource>
</xjbSources>
关于java - XJC "Is not part of this compilation"问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34499299/
我使用 XJC 生成一些 Java 类,但生成的 Java 代码包含丑陋的 Javadoc header 。 例子: /** * Java class for XXX complex type.
Maven工程,转移到另一台PC后报错。为什么? [INFO] [jaxb2:generate {execution: default-cli}] [INFO] -------------------
升级到雅加达给我带来了一些问题。。我正在使用以下maven插件:。并且我使用episodal编译(有库)。突然间,我面临着以下问题:。更仔细的检查发现,XJC突然生成了以下字段:。这是它以前没有产生的
我有三个 XSD 文件:a.xsd、b.xsd 和 c.xsd 每个都包含一个名为 MyHeader 的 xs:element 我尝试使用 xjc 从这三个 XSD 文件生成 java 类 生成jav
我正在尝试从 DTD 生成的单个 ~7,000 行 cXML 模式文件生成代码。我已经能够解决一些与 xjc 自定义的冲突,但最后一个让我难过。 我尝试了类和工厂方法自定义,但没有成功。 当我尝试应用
我正在开发使用定制的 XJC 插件。问题是我得到了 [ERROR] compiler was unable to honor this myPlugin:testAnnotation customiz
当我想用 XJC 编译我的 XSD(我不是它的作者)时遇到了麻烦。 具体来说,我得到了错误(实际上还有更多类似的错误): [ERROR] src-resolve: Cannot resolve th
我正在尝试使用 xjc 代码生成工具从 *.xsd 文件包中生成 java 源文件。 这些*.xsd文件中使用的命名空间如下: http://www.domain.com/foo/bar.x htt
我正在使用 JAXB 从 xsd 模式创建类。 有没有办法标记单个复杂类型,以便将它们发送到不同的目标包,而不是将它们全部发送到同一个包? 我需要这个的原因是很多生成的 java 类将被来自不同来源的
我有一个导入 b.xsd 的模式 a.xsd。我在架构 a.xsd 中有如下条目: 我需要使用 jar(公共(public) sdk)中的模式 b.xsd。所以我使用目录文件如下 SYSTEM "b
我们计划使用 JAXB 将 xml 映射到对象。我们的要求是,我们将只处理文档的一部分(稍大),因此我们只想将该部分(片段)转换为对象。因此,我们不想为 xsd 中的所有元素创建类。 如何让 xjc
您好,我正在尝试使用 xjc 命令从 .xsd 文件生成 java 对象。 xsd 文件很大,下面可以看到其中的一部分。当我在以下模式上运行 xjc 时,我得到 3 个类 UpsBas、MsgHdr
我有一个xsd,如下 ..... ..... ......
我们计划使用 JAXB 将 xml 映射到对象。我们的要求是我们将只处理文档的一部分(稍大),因此我们只想将该部分(片段)转换为对象。因此,我们不想为 xsd 中的所有元素创建类。 我们如何让xjc在
这个问题与JAXB2 type restriction not working?有关.我想扩展 XJC 以支持类型限制。它就像覆盖父类(super class)的字段定义一样简单。 有什么办法可以正确
我想从我的 Java 项目调用 ISAN Restful API,所以我尝试使用 maven-jaxb2-plugin 从 xsd 文件生成 java bean。这是 xsds: http://www
如果我有一个如下的架构:
我使用 JAXB 获得了这个 API,可以方便地使用对象模型,这些模型是由 XJC(XML-to-Java)编译器通过命名引用从 XML 模式生成的。它抽象了 JAXB 上下文的创建,并通过各种背景魔
以下模式应该生成两个原始 int Value 中的字段类,而是生成一个原始 int为 元素 和 java.lang.Integer为 属性 .
这些天我花了一些时间在 JAXB 上将 XSD 转换为 Java 类,反之亦然。这是一个非常适合初学者的教程,http://www.journaldev.com/1312/how-to-generat
我是一名优秀的程序员,十分优秀!