假定当前工作目录在E盘:
1、带包编译:javac -d c: MyMenuDemo.java
2、DOS命令行切换到c盘,注意,这里一般切换到的是用户文件目录,需要手动切换到C盘根目录
>C:
>cd/
3、jar -cvf my.jar mymenu
装会出现错误:Failed to load Main-Class manifest attribute from c:my.jar
或者出现异常错误。
原因:很简单,系统不知道先执行哪个类。
解决方法:需要配置:Main-Class属性
4、在mymenu平齐目录下即c:下新建一个文件,格式随意,例如:1.txt
文件中输入:Main-Class: mymenu.MyMenuDemo
注意格式:冒号后面必须有一个空格,行结尾必须有换行符(回车)****重要****,保存退出。
5、>jar -cvfm my.jar 1.txt mymenu 此时双击my.jar就可以运行了
注意一个小问题:如果jar包是自己安装的,那么没关系。若是绿色版,那么jar没有注册,会出现不识别现象。
xp--工具--文件类型--高级--查看jar情况。具体方法问度娘。
示例程序:
package mymenu; import java.awt.*; import java.awt.event.*; import java.io.*; public class MyMenuDemo { private Frame f; private MenuBar mb; private Menu m; private MenuItem closeItem; private Menu subMenu; private MenuItem subMenuItem; MyMenuDemo() { init(); } public void init() { f=new Frame("my frame"); f.setBounds(300,200,650,600); f.setLayout(new FlowLayout()); //设置窗体格式 mb = new MenuBar(); //创建菜单条实例 m = new Menu("文件");//创建菜单实例 closeItem=new MenuItem("退出");//创建菜单项 //创建子菜单子条目实例 subMenu=new Menu("子菜单"); subMenuItem=new MenuItem("子条目"); f.setMenuBar(mb); mb.add(m); m.add(closeItem); //添加子菜单子条目 m.add(subMenu); subMenu.add(subMenuItem); myEvent(); //为窗体加载事件 f.setVisible(true); } private void myEvent() { //窗体关闭事件 f.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); } public static void main(String[] args) { new MyMenuDemo(); } } //添加事例 class JarTest1 { } class JarTest2 { } class JarTest3 { } class JarTest4 { }