Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用默认值为pugin和JDK1.6的最新jaxb_Jaxb_Jdk1.6 - Fatal编程技术网

如何使用默认值为pugin和JDK1.6的最新jaxb

如何使用默认值为pugin和JDK1.6的最新jaxb,jaxb,jdk1.6,Jaxb,Jdk1.6,自JDK1.6以来,jaxb xjc相关JAR被包括在内,并在使用java命令时由JVM自动加载。我目前正试图以以下方式使用xjc默认值插件: java -Djava.endorsed.dirs=C:\workspace\javalibs\xjc -classpath C:\apache-ant-1.8.3\lib\ant.jar;c:\workspace\javalibs\xjc\cxf-xjc-dv-2.6.1.jar com.sun.tools.xjc.XJCFacade -d test

自JDK1.6以来,jaxb xjc相关JAR被包括在内,并在使用java命令时由JVM自动加载。我目前正试图以以下方式使用xjc默认值插件:

java -Djava.endorsed.dirs=C:\workspace\javalibs\xjc -classpath C:\apache-ant-1.8.3\lib\ant.jar;c:\workspace\javalibs\xjc\cxf-xjc-dv-2.6.1.jar com.sun.tools.xjc.XJCFacade -d test -extension -Xdv -verbose test.xsd
java.annowned.dirs
属性应该允许您使用更高的完整版本覆盖jaxb的jdk版本。jdk 1.6中使用的版本是2.1.10。因此,我将jaxb2.2相关的jar放在认可的dirs目录中。尽管如此,在执行java命令时,我还是遇到了以下错误:

Exception in thread "main" java.lang.LinkageError: loader constraint violation:
loader (instance of <bootloader>) previously initiated loading for a different type with name "com/sun/tools/xjc/outline/Outline"
    at org.apache.cxf.xjc.dv.DefaultValuePlugin.run(DefaultValuePlugin.java:105)
    at com.sun.tools.xjc.addon.apache_cxf.dv.DefaultValuePlugin.run(DefaultValuePlugin.java:59)
    at com.sun.tools.xjc.model.Model.generateCode(Model.java:290)
    at com.sun.tools.xjc.Driver.run(Driver.java:343)
    at com.sun.tools.xjc.Driver.run(Driver.java:191)
    at com.sun.tools.xjc.Driver._main(Driver.java:116)
    at com.sun.tools.xjc.Driver.access$000(Driver.java:74)
    at com.sun.tools.xjc.Driver$1.run(Driver.java:96)
线程“main”java.lang.LinkageError中的异常:加载程序约束冲突: 加载程序(的实例)以前为名为“com/sun/tools/xjc/outline/outline”的不同类型启动加载 位于org.apache.cxf.xjc.dv.DefaultValuePlugin.run(DefaultValuePlugin.java:105) 位于com.sun.tools.xjc.addon.apache_cxf.dv.DefaultValuePlugin.run(DefaultValuePlugin.java:59) 位于com.sun.tools.xjc.model.model.generateCode(model.java:290) 位于com.sun.tools.xjc.Driver.run(Driver.java:343) 位于com.sun.tools.xjc.Driver.run(Driver.java:191) 位于com.sun.tools.xjc.Driver.\u main(Driver.java:116) 访问com.sun.tools.xjc.Driver.access$000(Driver.java:74) 位于com.sun.tools.xjc.Driver$1.run(Driver.java:96) 然后我用JDK1.5测试了插件,这些类是由xjc正确生成的,没有任何问题。原因是JDK1.5不包括与jaxb xjc相关的JAR,因此它们没有预加载,因此没有链接错误冲突。我的问题是如何让JDK1.6使用我提供的jaxb JAR(通过
java.annowned.dirs
或其他方式),而不是预打包的jaxb JAR,以便正确使用插件