在Java开发中,Applet是一种嵌入网页运行的小程序,虽然现代浏览器已逐步淘汰对其支持(因安全策略和插件架构变化),但在开发测试阶段,通过命令行工具appletviewer
运行Applet仍是核心方式,以下是详细操作指南:
-
安装JDK
确保系统已安装Java Development Kit (JDK),建议JDK 8或更高版本(Applet在后续版本中已被标记为废弃)。- 验证安装:终端输入
javac -version
和java -version
,确认版本信息。
- 验证安装:终端输入
-
编写Applet代码
创建Java文件(如MyApplet.java
),基础结构如下:import java.applet.Applet; import java.awt.Graphics; public class MyApplet extends Applet { @Override public void paint(Graphics g) { g.drawString("Hello, Applet!", 50, 50); // 在坐标(50,50)显示文本 } }
-
编译Java文件
终端执行编译命令生成.class
文件:javac MyApplet.java
通过命令运行Applet的两种方式
方式1:直接使用appletviewer
命令
-
创建HTML文件(仅需基础标签)
在同一目录创建MyApplet.html
如下:<applet code="MyApplet.class" width="300" height="200"></applet>
code
:指定编译后的.class文件名。width
/height
:定义Applet显示区域尺寸。
-
命令行启动Applet
终端执行:appletviewer MyApplet.html
成功运行后会弹出独立窗口显示Applet内容(如”Hello, Applet!”)。
方式2:通过Java注解(无需HTML文件)
-
在Applet源码中添加注解
修改MyApplet.java
,在类声明前加入:/* <applet code="MyApplet" width=300 height=200> </applet> */ public class MyApplet extends Applet { ... }
-
直接运行.class文件
终端执行:appletviewer MyApplet.java # 或 appletviewer MyApplet.class
appletviewer
会自动解析源码中的注解并启动。
常见问题与注意事项
-
安全限制
- 若Applet尝试访问本地文件或网络,会触发
AccessControlException
。 - 解决方案:
- 为测试环境配置策略文件(如
java.policy
)。 - 使用
-J-Djava.security.policy
参数赋予权限:appletviewer -J-Djava.security.policy=allow.policy MyApplet.html
(
allow.policy
中可添加grant { permission java.security.AllPermission; };
)
- 为测试环境配置策略文件(如
- 若Applet尝试访问本地文件或网络,会触发
-
浏览器兼容性
- Chrome/Firefox/Edge等现代浏览器已全面停止支持NPAPI插件(包括Applet)。
- 仅限用于本地开发测试,不可部署到生产环境。
-
替代方案建议
- 迁移至Java Web Start(JNLP技术)。
- 使用HTML5、JavaScript或JavaFX等现代前端技术替代。
操作流程图示
graph LR A[编写Applet源码 .java] --> B[编译为.class文件] B --> C{选择运行方式} C --> D[创建HTML文件+appletviewer] C --> E[源码内嵌注解+appletviewer] D --> F[弹出Applet窗口] E --> F
重要提示:
- Oracle已在JDK 9+中废弃Applet API,未来版本将彻底移除。
- 企业级应用请优先考虑云原生或WebAssembly等替代方案。
引用说明:
- Oracle官方文档:Java Applet基础
- JDK废弃特性清单:JEP 289
- 浏览器支持策略:Chrome NPAPI弃用公告
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/9664.html