我正在使用 Eclipse 编写我的程序。我有 9 个类,我正在使用小程序,我的代码中没有 main 方法。
有人告诉我,我需要提交一个“包括源代码的可运行 Jar 存档”。不知何故,当我尝试使用 Eclipse 导出“可运行 Jar 文件”导出我的程序时,我找不到我的程序的启动配置。它在 Eclipse 中运行良好,但我无法导出可运行的 Jar 文件。
有人可以告诉我是什么问题吗?
肯尼
我正在使用 Eclipse 编写我的程序。我有 9 个类,我正在使用小程序,我的代码中没有 main 方法。
有人告诉我,我需要提交一个“包括源代码的可运行 Jar 存档”。不知何故,当我尝试使用 Eclipse 导出“可运行 Jar 文件”导出我的程序时,我找不到我的程序的启动配置。它在 Eclipse 中运行良好,但我无法导出可运行的 Jar 文件。
有人可以告诉我是什么问题吗?
肯尼
据我所知,可执行的 JAR 需要一个 main 方法。在清单 Main-Class 标记中,只能在主类所在的位置声明一个类(无方法)。也许以下代码对您来说是一个可能的解决方案:
package CaesarCodePackage;
public class StartClass {
public static void main(String [] args)
{
// create an object of type appletclass
AppletClass theApplet = new AppletClass();
theApplet.init(); // invoke the applet's init() method
theApplet.start(); // starts the applet
// If the applet views something (this is optional)
// Create a window (JFrame) and make applet the content pane.
javax.swing.JFrame window = new javax.swing.JFrame("Caesar's Cipher");
window.setContentPane(theApplet);
window.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
window.pack(); // Arrange the components.
window.setVisible(true); // Make the window visible.
}
}
如果您不需要 Frame 来显示小程序,只需启动它。
(感谢 Haider M. al-Khateeb 提供代码)
“启动配置”只是具有主要方法的类的花哨语言 - 根据您选择的内容,向导将使用以下属性填充您的可运行 jar 清单:
Main-Class: example.MainClass
当然,如果没有这个条目,你实际上不可能有一个可执行的 jar。因此,要回答您的问题,您必须创建一个包含 main 方法的类。main 方法中的逻辑应该以独立模式启动您的 GUI。然后再次运行您的“Export Runnable JAR”向导并选择您创建的类作为启动配置。
我猜你在启动 jar 时遇到了一些问题
您可以通过单击“运行配置”来构建您的自定义启动器,将您的 jar 放在类路径中
您是否尝试将项目导出为 JAR(不可运行的 JAR)。
我认为 ti 会让你指定你自己的 MANIFEST 文件。有了这个,您只需要确保 MANIFEST.mf 文件包含程序的 MAIN-Class。(你需要一个主类来运行 JAR)
http://docs.oracle.com/javase/tutorial/deployment/jar/manifestindex.html
http://docs.oracle.com/javase/tutorial/deployment/jar/appman.html
例如
Main-Class: MyPackage.MyClass