如何运行包含多个.jar文件与HTML文件的Java Applet游戏?
如何运行基于Java Applet的旧版Diamond Mine游戏
前提准备
- 安装Java 8或更早版本的JDK:Java 9及以上版本已移除Applet支持,推荐用JDK 1.4(适配2000年游戏的原生环境)或JDK 8(更容易找到安装包)。确保
appletviewer命令能在终端/命令行中直接调用(可通过配置环境变量,或使用JDK安装目录下bin文件夹的完整路径执行)。
运行步骤
方法1:通过HTML索引文件直接启动(推荐)
- 解压下载的游戏文件,确保目录结构完整:两个
.jar文件、对应的HTML文件、图片和音效文件夹都在同一根目录下。 - 打开终端/命令提示符,切换到游戏文件所在的目录:
cd /path/to/your/game/folder - 执行
appletviewer命令并指定HTML文件名(替换为实际的HTML文件名,比如diamond-mine.html):
该命令会自动解析HTML中的Applet标签,加载对应的appletviewer diamond-mine.html.jar文件和资源。
方法2:直接指定JAR和主类(当HTML文件损坏时)
- 先确定JAR文件中的主Applet类:执行以下命令查看JAR内的文件列表,找到继承自
java.applet.Applet的类(通常类名会包含Applet或Game字样):jar tf your-game.jar - 执行
appletviewer命令,通过-J-cp参数指定类路径,并传入主类的完整类名:
(将appletviewer -J-cp your-game.jar com.yourgame.MainAppletClassyour-game.jar替换为实际的JAR文件名,com.yourgame.MainAppletClass替换为找到的主Applet类的完整路径)
常见问题解决
- 资源加载失败:确保图片、音效文件夹与JAR/HTML文件在同一目录,旧版Applet会从当前工作目录加载外部资源。
- 安全警告弹窗:老版Java会对未签名的Applet弹出安全提示,可通过以下方式绕过:
- 创建一个名为
allow.policy的文本文件,内容为:grant { permission java.security.AllPermission; }; - 运行命令时添加参数:
appletviewer -J-Djava.security.policy=allow.policy diamond-mine.html
- 创建一个名为
- 命令找不到:如果提示
appletviewer不存在,直接使用JDK安装目录下的完整路径,比如:C:\Program Files\Java\jdk1.8.0_301\bin\appletviewer.exe diamond-mine.html
内容的提问来源于stack exchange,提问作者Genostix




