报的错误如下F:\>appletviewer test.html
java.lang.NoClassDefFoundError: test.no2
        java.lang.Class java.lang.ClassLoader.defineClass0(java.lang.String, byt
e[], int, int, java.security.ProtectionDomain)
                native code
        java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String, byte
[], int, int, java.security.ProtectionDomain)
                ClassLoader.java:493
        java.lang.Class java.security.SecureClassLoader.defineClass(java.lang.St
ring, byte[], int, int, java.security.CodeSource)
                SecureClassLoader.java:111
        java.lang.Class sun.applet.AppletClassLoader.findClass(java.lang.String)                AppletClassLoader.java:143
        java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolea
n)
                ClassLoader.java:299
        java.lang.Class sun.applet.AppletClassLoader.loadClass(java.lang.String,
 boolean)
                AppletClassLoader.java:112
        java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String)
                ClassLoader.java:255
        java.lang.Class sun.applet.AppletClassLoader.loadCode(java.lang.String)
                AppletClassLoader.java:468
        java.applet.Applet sun.applet.AppletPanel.createApplet(sun.applet.Applet
ClassLoader)
                AppletPanel.java:586
        void sun.applet.AppletPanel.runLoader()
                AppletPanel.java:515
        void sun.applet.AppletPanel.run()
                AppletPanel.java:293
        void java.lang.Thread.run()
                Thread.java:484

解决方案 »

  1.   

    test.html
    应该和test包
    放在一起,也就是同一个文件夹下
      

  2.   

    我是放在一起的啊
    test.html 和 我用的 applet程序 都在同一目录下啊
      

  3.   

    把APPLET文件的代码贴出来看看
      

  4.   

    是不是要设置环境啊path已经设置了,要不然我也没办法运行appletviewer 和 编译applet程序
      

  5.   

    applet 程序代码如下package test;
    import javax.swing.*;
    import java.util.*;
    import javax.swing.table.*;
    import java.applet.*;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.event.*;
    import java.lang.String;public class no2 extends JApplet
    {
        static int v = JSplitPane.VERTICAL_SPLIT;
        Vector srcdata = new Vector();
        String[] columnName =
            {"字段","字段","字段","字段"};
        Vector rowdata = new Vector();
        Vector cname = new Vector(4);
        JTable jt = new JTable();
        DefaultTableModel model = new DefaultTableModel(srcdata,cname);
        JScrollPane js = new JScrollPane(); //创建滚动窗    
        public void init()
        {
            Container c = this.getContentPane();
            JPanel jp1 = new JPanel(); //装载菜单的面板
            jp1.setLayout(new FlowLayout(FlowLayout.LEFT));
            JMenuBar jmb = new JMenuBar(); //创建菜单条
            JMenu buymenu = new JMenu("菜单");
            JMenuItem b1 = new JMenuItem("子项");
            buymenu.add(b1); //将子项加入菜单
            jmb.add(buymenu); //将菜单加入菜单条
            jp1.add(jmb); //将菜单条入面板
            JPanel jp2 = new JPanel(); //装载表格的面板
            JSplitPane jsp = new JSplitPane(v,true,jp1,js);
            rowdata.add("");
            rowdata.add("");
            rowdata.add("");
            rowdata.add("");
            cname.add(columnName[0]);
            cname.add(columnName[1]);
            cname.add(columnName[2]);
            cname.add(columnName[3]);
            srcdata.add(rowdata);
            jt.setModel(model);
            jt.setCellSelectionEnabled(true); //是能否选中一个cell,也就是一行和一列的交叉单元格
            jt.setColumnSelectionAllowed(true);  //是能否选中一列        b1.addActionListener(new java.awt.event.ActionListener()
            {
                public void actionPerformed(ActionEvent event)
                {
                    if(event.getSource()instanceof JMenuItem)
                    {
                        js.add(jt);
                    }
                    js.getViewport().setView(jt);
                }
            });        jt.addKeyListener(new java.awt.event.KeyListener()
            {
                int col = 0; 
                int selected; 
                int rowcount;
                public void keyPressed(KeyEvent e)
                {
                    JDialog jfr = new JDialog();
                    col = jt.getSelectedColumn();
                    int cct = jt.getColumnCount();
                    int keycode = e.getKeyCode();
                    showStatus("col:" + col + "selected:" + selected);
                                    if(keycode == KeyEvent.VK_ENTER && col == 0)
                    {   rowcount=model.getRowCount();
                        String calls = jt.getValueAt(selected,col).toString();
                        JLabel tmpj = new JLabel("该表格共"+rowcount+"行," + cct + "列。" + "您在第" + (selected + 1) + "行第" + (col + 1) + "单元格处输入了字符:" + calls,JLabel.CENTER);
                        jfr.getContentPane().add(tmpj);
                        jfr.setSize(600,400);
                        jfr.show();
                    }                if((col+1)==cct && keycode==KeyEvent.VK_ENTER){ model.addRow(new Vector());}
                    //对打开的对话框进行监听,当关闭后,则跳到第二格!
                    jfr.addWindowListener(new WindowAdapter()
                    {
                        public void windowClosing(WindowEvent e)
                        {
                            jt.setEditingColumn(col + 1);  //设置被编辑的列加1
                        }
                    });
                }
                public void keyTyped(KeyEvent e)
                {}
                public void keyReleased(KeyEvent e)
                {}
            });
            c.add(jsp);
        }
    }
      

  6.   

    html文件xxx.html
    <html>
    <applet code=test.no2 width=300 height=300></applet>
    </html>你的no2.java编译出来一个包test,也就是test文件夹xxx.html和test文件夹放在同一个文件夹下,就ok了在这个目录下,appletviewer xxx.html