繁体   English   中英

Java中的ClassNotFoundException

[英]ClassNotFoundException in Java

我有一个奇怪且麻烦的问题。 我将所有.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 applet时,会遇到相同的问题(可能是因为我的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。

这可能是由多种原因引起的,但最可能的原因是您尚未指定所使用类的程序包。 看看这个帖子的答案。

如果您使用的是软件包,则必须在inijar4.class 的jar相对路径前添加前缀

我认为问题出在这里:

        <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编码约定 在这种情况下:

  • 类名以大写字母开头!
  • ClassNamesDoNotContainUndercoresIn代替他们是骆驼装!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM