gpt4 book ai didi

Java NoClassFoundDefError 和 ClassNotFoundException 问题

转载 作者:行者123 更新时间:2023-11-30 07:18:30 25 4
gpt4 key购买 nike

我只花了两个小时阅读了互联网上到处讨论这个问题的帖子,但没有找到我正在寻找的解决方案。

我在 Eclipse 中创建了一个 Java 应用程序。我将其导出为 Jar 文件、可运行 Jar 文件(我尝试了所有三个选项:提取所需的库、打包所需的库...)并且 Jar 文件在我开发应用程序的 Windows 7 上运行良好。

我尝试在另一台运行 Windows Vista 的计算机上使用它。如果我双击 jar 文件,我会收到一条错误消息,指出“找不到主类:Golf_Calculator。程序将退出。”。我试着用命令运行它,我得到了这个:

C:\Users\Geoffroy\Desktop\Golf Calculator>java Golf_Calculator.jar
Exception in thread "main" java.lang.NoClassDefFoundError: Golf_Calculator/jar
Caused by: java.lang.ClassNotFoundException: Golf_Calculator.jar
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)
Could not find the main class: Golf_Calculator.jar. Program will exit.

我真的不知道该怎么办我的 META-INF 文件夹位于 Jar 文件中,其中包含具有正确主类名称的 MANIFEST.MF 文件。我读到这可能是因为我在代码中导入的类不在主目录中,但是当使用 Eclipse 生成 Runnable Jar 文件时,使用“提取所需的库”选项,我认为它会修复问题。不,它没有..以下是我在代码中所做的所有导入,可能会给您提示:

import java.awt.BorderLayout;
import java.awt.CardLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.PrintWriter;
import java.math.BigDecimal;
import java.util.Vector;

import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.DefaultListModel;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.ListModel;
import javax.swing.Box.Filler;
import javax.swing.event.TableModelListener;
import javax.swing.plaf.ComboBoxUI;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;

我希望有人能帮助我 :)

非常感谢!

编辑:我试过这个:java -jar Golf_Calculator.jar 并得到了这个:

C:\Users\Geoffroy\Desktop\Golf Calculator>java -jar Golf_Calculator.jar
Exception in thread "main" java.lang.UnsupportedClassVersionError: Golf_Calculat
or : 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)
Could not find the main class: Golf_Calculator. Program will exit.

最佳答案

您运行的不是 java 文件,它是一个 jar 文件。使用以下命令运行它。

java -jar Golf_Calculator.jar

关于Java NoClassFoundDefError 和 ClassNotFoundException 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15325354/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com