Java 在Chrome中加载小程序时ClassNotFound异常
我很难让Java小程序在Chrome中运行。类加载器无法找到该类,即使它在Firefox、Opera和Safari中运行良好 下面是我的测试小程序类(为了保持简单,我甚至拿出了包声明): 以下是简约测试页面:Java 在Chrome中加载小程序时ClassNotFound异常,java,html,google-chrome,applet,classnotfound,Java,Html,Google Chrome,Applet,Classnotfound,我很难让Java小程序在Chrome中运行。类加载器无法找到该类,即使它在Firefox、Opera和Safari中运行良好 下面是我的测试小程序类(为了保持简单,我甚至拿出了包声明): 以下是简约测试页面: <!doctype html> <html><head> <meta charset="utf-8"/> <title>Test</title> </head><body> <
<!doctype html>
<html><head>
<meta charset="utf-8"/>
<title>Test</title>
</head><body>
<p>
<object type="application/x-java-applet" width="50" height="70">
<param name="code" value="Test" />
Test failed.
</object>
</p>
</body></html>
我用javac Test.java
编译了这个类,并将.class文件与.html文件放在同一个文件夹中。同样,这在Firefox、Safari和Opera中都运行良好,为什么不在Chrome中运行呢
我尝试过创建一个jar并添加
,但没有帮助
哦,当我问问题的时候:是否有一个官方规范列出了
标签中的小程序可以使用的
参数?它不在HTML5规范中,这是有道理的,但Oracle似乎喜欢旧的废弃的
标记,我需要使用严格的HTML5
环境
运行OS X 10.7.1的MacBook Pro
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03-383-11A511)
Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02-383, mixed mode)
谷歌Chrome 13.0.782.220看起来就是看不到你的小程序
我们还假设jar包含您的Test.class:)要使其易于测试,请更改以下内容:
<!doctype html>
<html><head>
<meta charset="utf-8"/>
<title>Test</title>
</head><body>
<p>
<object type="application/x-java-applet" width="50" height="70">
<param name="code" value="Test" />
Test failed.
</object>
</p>
</body></html>
试验
测试失败。
为此:
<html>
<head>
<meta charset="utf-8"/>
<title>Test</title>
</head>
<body>
<p>
<applet code="Test" width="50" height="70">
Test failed.
</applet>
</p>
</body>
</html>
试验
是现在嵌入小程序的正确方法。它会根据浏览器的需要编写对象或嵌入元素,并且它的目标是正确地执行此操作。用于部署小程序,而不是您自己的自制解决方案。我同意。我这样做的原因是我正在修改一本关于HTML的书。最后,有一个例子说明了如何插入Java小程序,我希望它简短一些。Java部分超出了本书的范围,但将小程序添加到页面却不是。请使用applet
元素,而不是object
元素。吻[见我对你的回答的评论]谢谢你的回复!不过,我已经仔细检查过了。很高兴知道归档参数是强制性的——我在哪里可以找到关于这些参数的文档?“归档参数是强制性的”不,不是。不符合W3C的规定。此外,如果元素是小程序元素,则只有小程序使用归档文件时才需要。谢谢。我再次将我的书更新为HTML5。在HTML5中,
中的
标记和属性classid
<代码>
甚至从1999年起在HTML4.01中被弃用。我当然会提到这些替代方案作为旧浏览器的后备方案,但我想展示添加applet的正确新方法。我可以理解为什么WHATWG已经从HTML5中删除了Java特有的东西,而Oracle自然希望继续保持Java在HTML中有自己标记的美好时光。不幸的是,这意味着我一直无法找到任何关于如何在HTML5中添加小程序的官方来源。这让我回到。。deployJava.js
有什么问题?这是现在嵌入小程序的正确方法。它根据浏览器的需要编写一个对象
或嵌入
元素,其目的是正确地执行。我觉得我们好像在兜圈子。我对deployJava.js
的问题是,这本书太过分了。但你是对的;这是部署Java小程序的正确解决方案。请在回答中再写一遍,这样我就可以把它标记为解决方案了!
<!doctype html>
<html><head>
<meta charset="utf-8"/>
<title>Test</title>
</head><body>
<p>
<object type="application/x-java-applet" width="50" height="70">
<param name="code" value="Test" />
Test failed.
</object>
</p>
</body></html>
<html>
<head>
<meta charset="utf-8"/>
<title>Test</title>
</head>
<body>
<p>
<applet code="Test" width="50" height="70">
Test failed.
</applet>
</p>
</body>
</html>