0

当我从 JGraphX 包中运行 HelloWorld.java 示例时,我收到以下错误消息。

线程“main”中的异常 java.lang.UnsupportedClassVersionError: JVMCFRE003 bad major version; class=com/mxgraph/swing/mxGraphComponent, offset=6 at java.lang.ClassLoader.defineClassImpl(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:275) at java.security.SecureClassLoader.defineClass(SecureClassLoader .java:69) 在 java.net.URLClassLoader.defineClass(URLClassLoader.java:540) 在 java.net.URLClassLoader.defineClass(URLClassLoader.java:451) 在 java.net.URLClassLoader.access$300(URLClassLoader.java:79 ) 在 java.net.URLClassLoader$ClassFinder.run(URLClassLoader.java:1038) 在 java.security.AccessController.doPrivileged(AccessController.java:284) 在 java.net.URLClassLoader.findClass(URLClassLoader.java:429) 在 java .lang.ClassLoader.loadClass(ClassLoader.java:

源代码 HelloWorld.java

package com.test.jgraphxdemo;

import javax.swing.JFrame;

import com.mxgraph.swing.mxGraphComponent;
import com.mxgraph.view.mxGraph;

public class HelloWorld extends JFrame
{

/**
 * 
 */
private static final long serialVersionUID = -2707712944901661771L;

public HelloWorld()
{
    super("Hello, World!");

    mxGraph graph = new mxGraph();
    Object parent = graph.getDefaultParent();

    graph.getModel().beginUpdate();
    try
    {
        Object v1 = graph.insertVertex(parent, null, "Hello", 20, 20, 80,
                30);
        Object v2 = graph.insertVertex(parent, null, "World!", 240, 150,
                80, 30);
        graph.insertEdge(parent, null, "Edge", v1, v2);
    }
    finally
    {
        graph.getModel().endUpdate();
    }

    mxGraphComponent graphComponent = new mxGraphComponent(graph);
    getContentPane().add(graphComponent);
}

public static void main(String[] args)
{
    HelloWorld frame = new HelloWorld();
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setSize(400, 320);
    frame.setVisible(true);
}

}

我正在使用 Eclipse 和Java SE 6

当我将我的 jdk 设置为 7 时它运行良好。但根据 jGraphx 项目文档here,它应该支持编译器版本 1.5 及更高版本。

<properties>
   <maven.compiler.source>1.5</maven.compiler.source>
   <maven.compiler.target>1.5</maven.compiler.target>
   <maven.compiler.compilerVersion>1.5</maven.compiler.compilerVersion>
   <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

我现在完全一团糟。请帮忙。非常感谢。

4

1 回答 1

0

该库默认使用 JDK 7 构建。如果您想要支持较早的 Java 版本,只需使用适当的合规标志重建库即可。

于 2015-03-17T14:18:31.783 回答