繁体   English   中英

无法为 JAXB 生成 XSD 架构 class

[英]Can't generate XSD schema for JAXB class

您好,我有一个简单的 JAXB 示例 class。但是当我尝试为其生成一个 xsd 架构时,我遇到了以下异常

`Exception in thread "main" java.lang.UnsupportedClassVersionError: org/eclipse/jpt/jaxb/core/schemagen/Main : Unsupported major.minor version 52.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)

我遇到这个错误的步骤是: Simply created a JAXB project in eclipse Implemented the class below

`package com.prods;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlRootElement;


@XmlAccessorType(XmlAccessType.FIELD)
@XmlRootElement(name = "product")

public class Product {
    @XmlAttribute

    protected int id; // необязательный

        protected String name; // обов’язковий, не пустий рядок

        protected double price; // >= 0

        protected String descr; // необязательный

        protected String[] categories; // необов’язковий, якщо присутній, то не



        protected char[] chars;// обов’язковий, можуть бути різними


}
`
T

当我尝试添加 xsd 架构时,出现了此异常。 对于目标,我使用 java 1.7 mac os X JAXB v2.1。 我怎样才能解决这个问题? 如果我尝试运行将 main function 添加到 class 的项目,它会正常运行。 当您尝试添加使用 eclipse 创建的 xsd 架构购买时会出现问题。对于 Java 企业,eclise 的版本是 2022-12。

我试图将我正在运行的 Java 版本更改为 JDK 19,但没有帮助。

不支持的 major.minor 版本 52.0

这意味着 Java8,如此处所述: How to fix java.lang.UnsupportedClassVersionError: Unsupported major.minor version

基本上,这意味着您正在使用比运行代码的更新版本 java 进行编译。 检查用于构建的 JDK,而不仅仅是运行的 JDK。

您好,我最近在最新的 eclipse 版本到 2022.12 上遇到了同样的问题。 问题实际上不是来自您的 java 应用程序,但在模式生成期间来自 eclipse 本身。 它使用一些已弃用的 function 来处理 xml 和 JRE,它运行在非目标上 JRE 不支持它们。 但是,如果您尝试在 JRE 1.7 上运行 eclipse,eclipse 将不会运行,因为缺少依赖项。 对我来说唯一的解决方案是安装 JRE 1.6 和 eclipse Indigo v3.7 并在那里完成任务

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM