Java 程序在编译器(Eclipse)中运行良好,但当我导出它时,它不会';行不通
这是我的代码。在我将其导出为可运行的JAR文件之前,它工作得非常好。我使用Eclipse作为IDE,我使用的是Windows10。当我右键单击项目并单击导出时,我选择Runnable JAR file作为一个选项。之后,我选择了正确的主类和保存文件的位置。问题就从这里开始:当我选择库处理选项时,我有3个选项Java 程序在编译器(Eclipse)中运行良好,但当我导出它时,它不会';行不通,java,eclipse,Java,Eclipse,这是我的代码。在我将其导出为可运行的JAR文件之前,它工作得非常好。我使用Eclipse作为IDE,我使用的是Windows10。当我右键单击项目并单击导出时,我选择Runnable JAR file作为一个选项。之后,我选择了正确的主类和保存文件的位置。问题就从这里开始:当我选择库处理选项时,我有3个选项 将所需库提取到生成的JAR中 将所需库打包到生成的JAR中 将所需库复制到生成的JAR旁边的子文件夹中 因此,当我选择选项1)时,这是我得到的错误消息:错误:发生了JNI错误,请检查您的安装
因此,如果你对这个问题有任何建议或解决方案,请告诉我。提前感谢。您的示例没有必需的库。听起来您的操作系统设置不足以正确处理jar文件。如果使用终端/命令提示符并运行java-jar your-jar-file.jar会发生什么情况出现此消息:错误:发生JNI错误,请检查您的安装并重试线程“main”java.lang.UnsupportedClassVersionError:main已由java运行时的较新版本(类文件版本59.0)编译,这个版本的Java运行时只识别高达52.0的类文件版本。听起来您的操作系统指向的是过时的JDK。运行
java-version
时会得到什么?eclipse使用的是什么JDK?噢,非常感谢,当我读到这条消息时,我用谷歌搜索了一下,得到了它。非常感谢你!
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Main {
public static void main(String args[]) {
JFrame frame = new JFrame("Frame");
JPanel panel = new JPanel();
JButton button = new JButton("Button");
panel.setBounds(0,0,300,300);
panel.setLayout(null);
button.setBounds(120,140,60,20);
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
panel.setBackground(Color.GREEN);
}
});
frame.setSize(300,300);
frame.setLocationRelativeTo(null);
frame.setResizable(false);
panel.add(button);
frame.add(panel);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}