Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java-Applet只是不显示?_Java_Html_Applet_Japplet - Fatal编程技术网

Java-Applet只是不显示?

Java-Applet只是不显示?,java,html,applet,japplet,Java,Html,Applet,Japplet,好的,我做了一个小程序教程,我读到运行小程序需要init()方法。确实如此。至少在我的IDE(Eclipse)中是这样。小程序查看器在运行我的小程序时没有问题,当我尝试在HTML中执行标记时,不会显示任何内容,但它的行为就像有什么东西在那里一样(文本位置由标记更改)。这是我的小程序: import java.awt.*; import javax.swing.*; public class Applet extends JApplet{ public void init(){

好的,我做了一个小程序教程,我读到运行小程序需要
init()
方法。确实如此。至少在我的IDE(Eclipse)中是这样。小程序查看器在运行我的小程序时没有问题,当我尝试在HTML中执行
标记时,不会显示任何内容,但它的行为就像有什么东西在那里一样(文本位置由标记更改)。这是我的小程序:

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>
最后,在搜索控制台之后,我发现:

Could not read chrome manifest file '/usr/lib/firefox-8.0/extensions
/{972ce4c6-7e08-4474-a285-3208198ce6fd}/chrome.manifest'.
该标记已弃用,应改用该标记。一些浏览器不支持
applet
标记,这可能是您无法看到applet的原因,而
object
标记现在应该可以与几乎所有浏览器一起使用

编辑:提供代码示例:

<OBJECT codetype="application/java"
        classid="java:Applet.class"
        width="500" height="500">
My first Java applet.
</OBJECT>

我的第一个Java小程序。

有关更多示例和信息,请参阅和。

如前所述,不建议使用applet标记。如果您确信最终用户浏览器将启用JavaScript,则可以使用此选项部署小程序:

<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>

var属性={codebase:'http://java.sun.com/products/plugin/1.5.0/demos/jfc/Java2D',
代码:'java2d.Java2DemoApplet.class',
存档:'Java2Demo.jar',
宽度:710,高度:540};
var参数={fontSize:16};
变量版本='1.6';
runApplet(属性、参数、版本);

上面的代码将在JRE 1.6.0版或更高版本上启动Java 2D小程序,只需一个参数(fontSize)。

对于像我这样搜索Google的人来说,这只是一个最新的答案(因为很多事情都与Java Web Start和Java小程序不同)

以下情况可能是Java小程序网页不可见的原因:

Chrome不再支持NPAPI(Java小程序所需的技术)

web浏览器的Java插件依赖于跨平台插件 架构NPAPI,所有主要web浏览器都支持该架构 十多年了。谷歌的Chrome版本45(计划发布) 2015年9月)放弃了对NPAPI的支持,影响了 Silverlight、Java、Facebook视频和其他类似的基于NPAPI的视频 插件。

Firefox限制了NPAPI支持(Java小程序所需的技术)

64位版本的Firefox不支持NPAPI插件, 包括Java。从Firefox 52(2017年3月发布)开始, 插件支持仅限于Adobe Flash,不再支持 NPAPI,影响Java、Silverlight和其他类似插件 基于NPAPI的插件。


目前看来,Internet Explorer是最好的选择。

您使用什么浏览器来测试它?您能给我举个例子吗?我不知道
标记已被弃用。>>(1)HTML 4.01中不推荐使用小程序元素。我假定(但不必费心检查)XHTML被声明为
过渡
,以便在包含
applet
元素的同时进行验证。我编辑了答案,为您提供了一个应该有效的示例。有关如何使用
标记的更多信息,也请查看链接。现在它显示Start:Applet未初始化。@Ken-查看Java控制台()并在此处发布异常堆栈跟踪(如果有)。这有什么意义吗?使用
对象
标记会更好吗?顺便说一句,这会影响小程序(高度和宽度都会改变),但不会显示任何内容。@Ken:因为这是一种非常好、干净、无麻烦的部署小程序的方法,而不必关心使用哪个标记(applet/object/embed)。@Ken:这很奇怪!。您可以在浏览器的错误控制台上看到任何错误(对于Firefox,按ctrl+shift+J)。
<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>