当前位置: 首页 > 面试题库 >

Java applet错误…怎么了?

贺俊材
2023-03-14
问题内容

Java applet代码

package M257Applet

import java.applet.*;

import javax.swing.*;

import java.awt.*;

public class HellowApplet extends JApplet {

    public  void init(){

        Container cp = getContentPane();
        JLabel lb = new JLabel("Hellowwwww");
        cp.add(lb);
    }

}

html文件

<html>
<head>
<title>Applet</title>
</head>
<body>
<APPLET CODE = HellowApplet.class  WIDTH =  400   HEIGHT = 400 >
</APPLET>
</body>
</html>

错误

Java Plug-in 1.6.0_22
Using JRE version 1.6.0_22-b04 Java HotSpot(TM) Client VM
User home directory = C:\Users\pc
----------------------------------------------------
c:   clear console window
f:   finalize objects on finalization queue
g:   garbage collect
h:   display this help message
l:   dump classloader list
m:   print memory usage
o:   trigger logging
q:   hide console
r:   reload policy configuration
s:   dump system and deployment properties
t:   dump thread list
v:   dump thread stack
x:   clear classloader cache
0-5: set trace level to <n>
----------------------------------------------------


java.lang.NoClassDefFoundError: HellowApplet (wrong name: M257Applet/HellowApplet)
    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 sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
    at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source)
    at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Exception: java.lang.NoClassDefFoundError: HellowApplet (wrong name: M257Applet/HellowApplet)

问题答案:

问题出在包装上。您需要更改applet的code属性,并根据放置HTML的位置更改codebase属性。您必须将HellowApplet.class放在名为M257Applet的目录中(因为这是您提供的软件包),并且applet标记应类似于:

<applet code="M257Applet.HellowApplet" ... ></applet>

为此,您的HTML必须与M257Applet位于同一目录(不在M257Applet内)。或者,您可以指定代码库属性。例如,具有以下目录结构:

somedir
  +-- hello.html
  +-- M257Applet
  |    +-- HellowApplet.class

小程序将起作用。但是,如果您有

anotherdir
  +-- hello.html
  +-- somedir
  |   +-- M257Applet
  |   |    +-- HellowApplet.class

那么您将必须像这样指定codebase属性:

<applet code="M257Applet.HellowApplet" codebase="somedir" ... ></applet>

因此,您应该codebase指向包含软件包的目录,并且code还必须在其中包含软件包名称。

编辑:请注意,即使code="HellowApplet.class"可以使用,但是指定小程序的正确方法是在末尾没有“ .class”。



 类似资料:
  • 问题内容: printf下划线为红色并给出错误信息?怎么了?我用过Eclipse 问题答案: 从Java 5开始可用。因此,看起来您的项目已配置为使用Java 1.4。右键单击更改项目的配置,然后转到“属性”: 选择Java Build Path选项,并确保您为项目使用正确的Java JDK版本。 选择Java编译器选项,并确保您使用的是Java 1.5或更高版本。 如果碰巧要用Java 8创建项

  • 这个 pgsql 报 syntax error as or "execption" 是为什么 ? 正确应该怎么写

  • 本文向大家介绍React v15中怎么处理错误边界?相关面试题,主要包含被问及React v15中怎么处理错误边界?时的应答技巧和注意事项,需要的朋友参考一下 React 15 中有一个支持有限的错误边界方法 unstable_handleError。此方法不再起作用,同时自 React 16 beta 发布起你需要在代码中将其修改为 componentDidCatch。

  • 我先说我对java有点生疏,所以如果是个愚蠢的错误,那就是原因。 我在Java中弄乱了小程序,并且在设置窗口大小和使用JOptionPane时遇到了一个问题,无论是只是显示消息,还是通过它获取输入,它都会显示三个或更多窗格,而不仅仅是一个窗格。我在Ubuntu 12.04(x64)上,这是我的测试代码仍然遇到问题:

  • 我想运行以下3个命令: 但我得到一个错误输出: 有人知道什么是问题以及如何解决吗?提前谢谢。

  • 问题内容: 这是我第一次真正使用列表和队列,因此这可能是一个非常简单的错误。是否因为我的队列中充满了无法转换为整数的对象? 问题答案: 除非您确实对性能至关重要,并且您使用了许多像int这样的原子类型,否则您确实应该使用Generics和ArrayList / ArrayDeque。然后,您应该看看 http://labs.carrotsearch.com/hppc.html