如何在本地浏览器中运行Java .class小程序?

4

我对Java一窍不通,只需要在本地主机上在浏览器中运行一个小程序。

我只需要从以下网站下载.class文件:

http://isgwww.cs.uni-magdeburg.de/tspanner/TSpanner.html

并需要在我的本地主机上运行此.class文件。

我尝试了Java applet Error … What is wrong?中提供的所有解决方案,但都无法成功运行。

这是我的HTML代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head>
 <title>Visualization of Spanners - The Applet</title>
</head>
<body alink="#990099" bgcolor="#cccccc" link="#000099" vlink="#000099">
<applet code="gsn.TSpanner" align="BOTTOM" height="480" width="720"></applet>
</body></html>

在放置这个 .html 文件的目录中,我创建了一个文件夹并将其重命名为 gsn,然后将 TSpanner.class 文件复制到其中,在访问 .html 文件的 URL 后,Java 抛出以下错误:

NoClassDefFoundError

gsn/TSpanner(错误名称:TSpanner)

我还尝试将 .class 文件复制到根目录并进行设置。

<applet code="TSpanner.class" align="BOTTOM" height="480" width="720"></applet>

再次没有成功。

这个 .class 文件能否在本地主机上运行?没有其他文件(比如 .jar),如果可以,应该怎么做?

谢谢。


最新版本的Chrome(这是我正在使用的版本)甚至不再支持Applets。唉,我帮助你的能力非常有限。 - Tim Biegeleisen
@TimBiegeleisen 我正在使用火狐浏览器,在更新了Java插件之后,它允许我运行它。 - M a m a D
我为您准备了详细的解决方案,请参见下面的答案。我使用了随Java JDK一起提供的“appletviewer”工具。如果您只有JRE,则建议您在此处下载JDK。 - Tim Biegeleisen
1个回答

3

我能够使用JDK附带的appletviewer命令行工具运行这个小程序。该appletviewer工具需要您提供一个包含<applet>标签的HTML页面,因此我创建了以下模拟页面以达到这个目的:

<HTML>
    <HEAD><TITLE>Test Page</TITLE></HEAD>
    <BODY>
    <APPLET code="TSpanner.class" align="BOTTOM" height="480" width="720"></applet>
    </BODY>
</HTML>

将此HTML页面保存在某个目录中,并将其命名为test.html。您稍后将使用appletviewer工具。

使其运行的诀窍是下载所有依赖于TSpanner.class的类文件。这意味着需要下载以下5个类文件:

  • TSpanner$AnimateThread.class
  • Path.class
  • Sheet.class
  • Point.class
  • PointVector.class

我通过在浏览器中输入Java本身会使用的URL来从浏览器中下载这些文件,以获取所需的文件。下面是我用来下载Point.class文件的示例URL:

http://isgwww.cs.uni-magdeburg.de/tspanner/Point.class

对于这五个必需的类文件,每一个都要做同样的操作(只需更改以上URL末尾的类文件名),并将它们保存到与上面创建的test.html页面位于同一级别的目录中。

最后,您可以从命令行运行Java appletviewer。切换到Java安装的bin目录,然后运行以下命令:

C:\Program Files\Java\jdk1.7.0_80\bin\appletviewer.exe test.html

一旦启动,您将看到应用程序小程序在自己的窗口中运行。这是一个屏幕截图,展示了它在我的电脑上运行的样子:enter image description here 您可以尝试在Firefox浏览器中运行此小程序,但除非您计划将其放到自己的网页中,否则appletviewer可能是更简单的方法。您可能已经发现,大多数浏览器在此时停止支持<applet>标签。

我是否下载了正确的软件,http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html? - M a m a D
是的,这里就是正确的地方。选择适合您操作系统(Windows、Linux、Mac OSX)的下载即可。 - Tim Biegeleisen
1
非常感谢。它完美地运行了。再次感谢。 - M a m a D
1
“appletviewer” 工具希望您提供一个包含 <applet> 标签的 HTML 页面。如果 applet 源代码文件在文件的第一部分的注释中定义了 applet 元素,则 applet 查看器也会接受 .java 文件作为参数(而不是 .html)。您可以在 applet info. page 中查看一个示例(带有代码注释中的 applet 元素的源代码示例)。 - Andrew Thompson
1
@AndrewThompson 感谢您的评论,Andrew。 - Tim Biegeleisen
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接