0

根据我的阅读,我相信 XJC 参数用于自定义 o/p Java 文件。我们在 jaxws-maven-plugin 中使用了这些。我在添加 jaxb-xjc jar 时找不到“MaskingClassLoader”的问题。

在 jaxws-maven-plugin 中,除了 '-Xcollection-setter-injector' 和 '-Xboolean-getter' 之外,提供的 xjc 参数之一是 '-Xybdisplay' 。当我尝试执行 'wsimport' 时,出现错误

[信息] jaxws:wsimport 参数:[-s, D:\HeartBeat_Admin\test\testmodel\target\jaxws\wsimport\java, -d, D:\HeartBeat_Admin\test\testmodel\target\classes, -extension, -Xnocompile , -B-verbose, -B-extension, -B-Xcollection-setter-injector, -B-Xboolean-getter, -B-Xybdisplay, D:\HeartBeat_Admin\test\testmodel\src\main\wsdl\test.wsdl ]
使用 java.util.ServiceLoader
[ybdisplay] XJC Plugin 类 com.sun.tools.xjc.addon.DisplayPlugin 实例化
[ybdisplay] 解析参数 -Xybdisplay
解析 WSDL...


[信息] --------------------------------------------- -------------------------

[信息] 构建失败
[信息] --------------------------------------------- -------------------------
[INFO] 总时间:18.265s
[INFO] 完成于:2012 年 5 月 23 日星期三 23:35:11 IST
[INFO] 最终内存:63M/63M
[信息] --------------------------------------------- -------------------------
[错误] 无法在项目 testmodel 上执行目标 org.codehaus.mojo:jaxws-maven-plugin:1.12:wsimport (profile):执行错误:wsimport [-s, D:\HeartBeat_Admin\test\testmodel\target\jaxws\ wsimport\java,-d,D:\HeartBeat_Admin\test\testmodel\target\classes,-extension,-Xnocompile,-B-verbose,-B-extension,-B-Xcollection-setter-injector,-B-Xboolean- getter, -B-Xybdisplay, D:\HeartBeat_Admin\test\testmodel\src\main\wsdl\test.wsdl] -> [帮助 1]
[错误]
[错误] 要查看错误的完整堆栈跟踪,请使用 -e 开关重新运行 Maven。
[错误] 使用 -X 开关重新运行 Maven 以启用完整的调试日志记录。
[错误]
[错误] 有关错误和可能的解决方案的更多信息,请阅读以下文章:
[错误] [帮助 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

-e 和 -X 没有多大帮助。我试图在 xsd 中搜索术语“ybdisplay”,但无法理解问题所在或自定义的工作原理。删除 xjc 参数 'ybdisplay' 会导致一个错误,指出我需要为自定义启用它。

在 XSD 中,我们有以下内容

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
        xmlns:ybmeta="http://www.yellowbook.com/bp/model/meta"
        xmlns:tns="http://www.yellowbook.com/bp/model/types"
        xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
        xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
        targetNamespace="http://www.yellowbook.com/bp/model/types"
        elementFormDefault="unqualified"
        attributeFormDefault="unqualified" jxb:version="2.0" jxb:extensionBindingPrefixes="ybmeta xjc">

<!-- Use our specific bindings -->
<xsd:annotation>
    <xsd:appinfo>
        <jxb:bindings schemaLocation="test.xsd">
            <jxb:schemaBindings>
                <jxb:package name="com.test.model.api"/>
            </jxb:schemaBindings>
        </jxb:bindings>
    </xsd:appinfo>
</xsd:annotation>

我不确定以上是否与 xjc 参数 'ybdisplay' 相关。请指导我 xjc 的工作以及如何调试此问题。

4

1 回答 1

0

这与 XJC args 无关。如果它对任何人有帮助,则问题是由于内存耗尽引起的。我修改了 MAVEN_OPTs 中的堆大小,一切正常。

于 2012-07-20T11:51:09.667 回答