0

我有一个奇怪而令人沮丧的问题。我将所有 .class 文件加载到一个 JAR 文件中,并将其放在我的本地 Web 服务器上。问题是当我用我的 JAR 导航到页面时,我得到了一个很大的 ClassNotFoundExeption。我 100% 确定这个类文件在我的 JAR 中。我也知道 JAR 文件与我的 XHTML 文件位于同一目录中

这是 XHTML 源代码

<html>
    <head>
    </head>
    <body bgcolor="000000">
        <center>
            <applet
                archive   = "program.jar"
                code    = "inigui4.class"
                width   = "500"
                height  = "300"
            >

            <param name="cache_option" value="no"> 
            </applet>
        </center>
    </body>
</html>

很奇怪!

出于某种原因,当我创建一个 hello world 小程序时,我遇到了同样的问题(可能与我的 LightTPD 服务器有关吗?

Java源码如下

import java.awt.*;
import java.applet.*;

public class inigui4 extends Applet {

    public void init() {
    }

    public void paint(Graphics g) {

        g.drawString("Welcome to Java!!", 50, 60 );

    }
}

甚至更陌生。

现在我无法在网络上加载任何小程序,因为我收到了这个错误。我需要在早上联系 Oracle。

4

3 回答 3

0

我认为问题出在这里:

        <applet
            archive   = "program.jar"
            code    = "inigui4.class"
            width   = "500"
            height  = "300"
        >

在这里,您指定inigui4.class- 但在您的 Java 代码中:

public class inigui_rb extends Applet {
   ...
}

这是inigui_rb. 尝试:

         <applet
            archive   = "program.jar"
            code    = "inigui_rb.class"
            width   = "500"
            height  = "300"
        >

ClassNotFoundException走了。

编码时也请遵守Java 编码约定!在这种情况下:

  • 班级名称以大写开头!
  • 类名不包含下划线而是驼峰式!
于 2012-11-10T09:55:23.487 回答
0

这可能是由多种原因引起的,但最可能的原因是您没有指定您正在使用的类的包。看看这个帖子的答案。

于 2012-11-10T09:28:47.387 回答
0

如果您使用的是包,则必须在 inigui4.class 的相对路径前添加到 jar 中

于 2012-11-10T09:28:52.487 回答