java.lang.ClassLoader.loadClass中出错(未知源)

java.lang.ClassLoader.loadClass中出错(未知源),java,classloader,Java,Classloader,在我的论文中,我试图用图片来处理一些事情,完成它的步骤之一就是在图片中找到角。在浏览了一些网页之后,我发现它可以用Moravec的角点检测算法来实现。幸运的是,我发现Moravec的算法已经由JFeatureLib在以下链接实现: (当然,我在Eclipse的构建路径中导入了JFeatureLib提供的jar文件) 所以我在我的项目中使用了链接处的代码,并编写了一些代码来调用它。下面是我创建一个帧、打开图片并在该链接调用Moravec算法的代码: import javax.swing.Image

在我的论文中,我试图用图片来处理一些事情,完成它的步骤之一就是在图片中找到角。在浏览了一些网页之后,我发现它可以用Moravec的角点检测算法来实现。幸运的是,我发现Moravec的算法已经由JFeatureLib在以下链接实现:

(当然,我在Eclipse的构建路径中导入了JFeatureLib提供的jar文件) 所以我在我的项目中使用了链接处的代码,并编写了一些代码来调用它。下面是我创建一个帧、打开图片并在该链接调用Moravec算法的代码:

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.SwingUtilities;




public class Compare{
    public Compare(){
        JFrame frame = new JFrame("Find corners in picture");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JPanel panel = (JPanel)frame.getContentPane();
        JLabel label = new JLabel();
        label.setIcon(new ImageIcon("house.jpg"));
        panel.add(label);
        frame.setLocationRelativeTo(null);
        frame.pack();
        frame.setVisible(true);
    }
    public static void main (String[] args){
        SwingUtilities.invokeLater(new Runnable(){
            public void run(){
                new Compare();
            }
        });
        Moravec picture = new Moravec();
    }
}
关键是它在行中返回一个错误

Moravec picture = new Moravec();
错误是这样的:

Exception in thread "main" java.lang.UnsupportedClassVersionError: de/lmu/ifi/dbs/jfeaturelib/pointDetector/PointDetector : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at Compare.main(Compare.java:32)
你能给我一些建议吗?
非常感谢

不支持的主次版本51.0

您正试图在旧Java版本中运行一个用新Java版本编译的jar。消息suggest
de/lmu/ifi/dbs/jfeaturelib/pointDetector/pointDetector
是使用JDK7编译的,但是您正在尝试使用旧版本(我猜是Java 6)运行它


执行
java-version
,看看情况是否如此。如果是这样,请在系统上找到JDK7,并使用它来运行程序。

哪个是例外?错误消息的第一行。@FrancescoSgaramella您没有发布整个错误消息,只有几行。我们都想要。我只是升级了这个问题。很抱歉这是个错误。现在,JDK7不会返回任何类型的错误。谢谢!