我是JAXB的新手,我想整理和解组XML/Objects to Objects/XML.
我从Sun的网站(价值22.69 MB)下载了JWSDP 2.0.
我已将环境变量设置为
JAVA_HOME :- D:\Program Files\Java\jdk1.5.0
JWSDP_HOME :- D:\Sun\jwsdp-2.0
JAXB_HOME :- D:\Sun\jwsdp-2.0\jaxb
PATH :- D:\Program Files\Java\jdk1.5.0\bin;D:\Sun\jwsdp-2.0\jwsdp-shared\bin;
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用XJC(存在于其中)编译一个简单的XSD文件(名为tp.xsd D:\Sun\jwsdp-2.0\jaxb\bin).
当我尝试编译它时,我得到以下输出:
D:\ Sun\jwsdp-2.0\jaxb\bin> xjc tp.xsd
parsing a schema...
compiling a schema...
generated\Bookdata.java
Exception in thread "main" java.lang.NoSuchMethodError: java.lang.Class.getSimpl
eName()Ljava/lang/String;
at com.sun.codemodel.JCodeModel$JReferencedClass.name(JCodeModel.java:54
5)
at com.sun.codemodel.JFormatter.t(JFormatter.java:283)
at com.sun.codemodel.JClass.generate(JClass.java:358)
at com.sun.codemodel.JFormatter.g(JFormatter.java:346)
at com.sun.codemodel.JAnnotationUse.generate(JAnnotationUse.java:388)
at com.sun.codemodel.JFormatter.g(JFormatter.java:346)
at com.sun.codemodel.JDefinedClass.declare(JDefinedClass.java:767)
at com.sun.codemodel.JFormatter.d(JFormatter.java:372)
at com.sun.codemodel.JFormatter.write(JFormatter.java:402)
at com.sun.codemodel.JPackage.build(JPackage.java:434)
at com.sun.codemodel.JCodeModel.build(JCodeModel.java:297)
at com.sun.codemodel.JCodeModel.build(JCodeModel.java:287)
at com.sun.tools.xjc.Driver.run(Driver.java:378)
at com.sun.tools.xjc.Driver.run(Driver.java:196)
at com.sun.tools.xjc.Driver._main(Driver.java:121)
at com.sun.tools.xjc.Driver.access$000(Driver.java:79)
at com.sun.tools.xjc.Driver$1.run(Driver.java:101)
Run Code Online (Sandbox Code Playgroud)
你能帮我找到解决方案吗?我知道错误
Exception in thread "main" java.lang.NoSuchMethodError: java.lang.Class.getSimpl eName()Ljava/lang/String;
Run Code Online (Sandbox Code Playgroud)
由于编译器和类文件不兼容而发生,但我不知道该怎么办!
当我运行java -version命令时,它显示:
C:\Documents and Settings\welcome>java -version
java version "1.6.0_23"
Java(TM) SE Runtime Environment (build 1.6.0_23-b05)
Java HotSpot(TM) Client VM (build 19.0-b09, mixed mode, sharing)
Run Code Online (Sandbox Code Playgroud)
jaxb库包含在java 1.6中.如果添加jar,你会得到各种疯狂的类加载器错误.
在这种情况下,看起来xjc选择了错误的jar版本.
xjc应该捆绑在JDK中,在你的帖子中你使用的是jabx独立包中的xjc.转到安装java 1.6的文件夹,检查是否有xjc.exe或xjc.bat并从该文件夹运行它.和Robert上面提到的一样,请确保您使用的是Java 1.6
| 归档时间: |
|
| 查看次数: |
7164 次 |
| 最近记录: |