Java - 小程序根本不显示?
Posted
技术标签:
【中文标题】Java - 小程序根本不显示?【英文标题】:Java - Applet simply not displaying? 【发布时间】:2012-01-16 11:18:12 【问题描述】:好的,所以我做了一个小程序教程,我读到init()
方法是运行小程序所必需的。它确实如此。至少在我的 IDE(Eclipse)中。 Applet Viewer 在运行我的小程序时没有问题,当我尝试在 html 中执行 <applet>
标记时,没有显示任何内容,但它表现得好像存在某些东西(文本位置被标记改变)。这是我的小程序:
import java.awt.*;
import javax.swing.*;
public class Applet extends JApplet
public void init()
Label label = new Label("Hello!");
this.add(label);
这是我在网页上使用的代码:
<applet code="Applet.class" width=100 height=100></applet>
即使我删除宽度/高度参数,我也会得到相同的结果(它不会显示在页面上)。是的,小程序的路径是正确的,并且在同一目录中。感谢您的帮助。
如果有帮助,这是我的DOCTYPE
:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
最后,在浏览了控制台之后,我发现了这个:
Could not read chrome manifest file '/usr/lib/firefox-8.0/extensions
/972ce4c6-7e08-4474-a285-3208198ce6fd/chrome.manifest'.
【问题讨论】:
你用什么浏览器测试它? 【参考方案1】:applet
标记已弃用,而应使用object
标记。某些浏览器不支持applet
标签,这可能是您看不到小程序的原因,而object
标签现在应该可以与几乎所有浏览器一起使用。
编辑:提供代码示例::
<OBJECT codetype="application/java"
classid="java:Applet.class"
>
My first Java applet.
</OBJECT>
有关更多示例和信息,请参阅 this link 和 this link。
【讨论】:
你能给我举个例子吗?我不知道<applet>
标签已被弃用。 > 。 >
(礼貌的咳嗽)小程序元素在 HTML 4.01 中已被弃用。我推测(但不能打扰检查)XHTML 被声明为transitional
以允许它在包含applet
元素的同时进行验证。
我已经编辑了答案,为您提供了一个应该有效的示例。也请查看链接以获取有关如何使用 <object>
标签的更多信息。
现在它显示 Start: Applet not initialized。
@Ken - 查看 Java 控制台 (docs.oracle.com/javase/1.5.0/docs/guide/deployment/…) 并在此处发布异常堆栈跟踪(如果有)。【参考方案2】:
如前所述,不推荐使用applet标签。如果您确定最终用户浏览器将启用 javascript,您可以使用此 simple way 来部署您的小程序:
<script src="http://www.java.com/js/deployJava.js"></script>
<script>
var attributes = codebase:'http://java.sun.com/products/plugin/1.5.0/demos/jfc/Java2D',
code:'java2d.Java2DemoApplet.class',
archive:'Java2Demo.jar',
width:710, height:540 ;
var parameters = fontSize:16 ;
var version = '1.6' ;
deployJava.runApplet(attributes, parameters, version);
</script>
以上代码将在 JRE 1.6.0 或更高版本上使用一个参数 (fontSize) 启动 Java 2D 小程序。
【讨论】:
这真的有道理吗?使用object
标签会更好吗?
顺便说一句,这会影响小程序(更改高度和宽度),但不会显示任何内容。
@Ken:因为它是一种非常好的、干净且轻松的小程序部署方式,无需关心使用哪个标签(小程序/对象/嵌入)。
@Ken:这很奇怪!你能在浏览器的错误控制台上看到任何错误吗(对于 Firefox,按 ctrl+ shift+ J)。【参考方案3】:
对于像我一样搜索 Google 的人来说,这只是一个最新的答案(因为 Java Web Start 和 Java Applets 已经发生了很多变化)。
以下情况可能是您的 Java 小程序网页不可见的原因:
Chrome 不再支持 NPAPI(Java 小程序所需的技术)
Web 浏览器的 Java 插件依赖于跨平台插件 架构 NPAPI,已被所有主流 Web 浏览器支持 十多年来。 Google 的 Chrome 版本 45(计划发布 2015 年 9 月)放弃对 NPAPI 的支持,影响插件 Silverlight、Java、Facebook Video 和其他类似的基于 NPAPI 插件。 https://www.java.com/en/download/faq/chrome.xml
Firefox 限制 NPAPI 支持(Java 小程序所需的技术)
64位版本的火狐不支持NPAPI插件, 包括Java。从 Firefox 52(2017 年 3 月发布)开始, 插件支持仅限于 Adobe Flash,并且不再支持 NPAPI,影响 Java、Silverlight 和其他类似插件 基于 NPAPI 的插件。 https://java.com/en/download/help/firefox_java.xml
看起来 Internet Explorer 是目前最好的选择。
【讨论】:
以上是关于Java - 小程序根本不显示?的主要内容,如果未能解决你的问题,请参考以下文章