我使用 Eclipse 创建了一个 Java 游戏。它有 11 个类(其中一个主类调用其他所有类)。我通过以下方式将其称为小程序:
<!-- This is the applet handler to load the Handler Class to run the game -->
<td colspan="3"><applet code="Handler.class" codebase="History Adventure Alamo Adventure/" name="Alamo Battle Adventure" width="680" height="509" archive="Handler.jar" id="Alamo Battle Adventure">
</applet></td>
将其上传到网站后,它显示错误并告诉我单击以获取详细信息。当我选择它时,它告诉我 ClassNotFoundException: Handler.class
代码在正文中,而我的头部什么也没有。我做错了什么?
这是我的页面的其余代码。实际测试页面可以在www.kluckhohndesign.com找到
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script language="javascript" type="text/javascript">
<!--
function popitup(url) {
newwindow=window.open(url,'name','height=510,width=500');
if (window.focus) {newwindow.focus()}
return false;
}
// -->
</script>
<title>Alamo Battle Adventure</title>
</head>
<body>
<blockquote> </blockquote>
<table width="1300" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="318" height="160"> </td>
<td colspan="3"><img src="Alamo Battle Adventure.jpg" width="680" height="160" alt="Top Banner" /></td>
<td width="318"> </td>
</tr>
<tr>
<td> </td>
<td width="226"><a href="howtoplay.html" onclick="return popitup('howtoplay.html')"><img src="How to Play.jpg" width="226" height="52" alt="How to Play" /></a></td>
<td width="226"> </td>
<td width="227"><a href="Help.html" onclick="return popitup('help.html')"><img src="help.jpg" width="226" height="52" alt="Help" /></a></td>
<td> </td>
<tr>
<td><img src="Alamo Pencil.jpg" width="318" height="250" alt="Alamo Drawing" /></td>
<!-- This is the applet handler to load the Handler Class to run the game -->
<td colspan="3"><applet code="Handler.jar" codebase="History Adventure Alamo Adventure/" name="Alamo Battle Adventure" width="680" height="509" archive="Handler.jar" id="Alamo Battle Adventure" />
</applet></td>
<td><img src="texans.jpg" width="318" height="250" alt="Texans Drawing" /></td>
</tr>
<tr>
<td> </td>
<td colspan="3"> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td colspan="3"> </td>
<td> </td>
</tr>
</table>
</body>
</html>
最佳答案
这应该会让你走得更远:
<html>
<body>
<applet
code="Handler"
codebase="http://www.kluckhohndesign.com/History%20Adventure%20Alamo%20Adventure/"
name="Alamo Battle Adventure"
width="680"
height="509"
archive="Handler.jar"
id="Alamo Battle Adventure" >
</applet>
</body>
</html>
您可以省略 http://www.kluckhohndesign.com/
代码库上的前缀。
现在它会导致 InvocationTargetException
。但对此提出一个新问题。
进一步说明
code
属性应该是类的完全限定名称并且与Jar无关。大多数人认为 FQN 等于Handler.class
但它实际上意味着Handler
.- 代码库可以简单地是
History%20Adventure%20Alamo%20Adventure/
如果它来自您的网站。它需要%20
对于空格,因为空格在 URL 中无效。话又说回来,正是出于这个原因,大多数部署者根本不会使用带有空格的目录名称。 applet
元素从来不意味着“自动关闭”,如原始页面所示。相反,它需要一个明确的</applet>
结束元素。- 请继续在我建议的更简单的页面中进行测试,不要出现其他问题。
关于java - 在网站上运行 Java 小程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16283437/