簡體   English   中英

Java Applet,只能在Eclipse中使用,不能在Chrome中使用

[英]Java Applet, works in eclipse, not chrome

我有一個非常簡單的Java Applet,即我使用了應該工作的docs.oracle( http://docs.oracle.com/javase/tutorial/deployment/applet/getStarted.html )網站中的源代碼,並且可以在eclipse就很好了,這是問題所在。 該文件位於localhost / localhost / applet / applet.html的localhost服務器上,並且我在同一目錄中包含文件JavaQuiz.jar。 我的html文件如下。

<hmtl>
<applet codebase="localhost/applet/"
    code = 'JavaQuiz.jar' 
    archive = 'JavaQuiz.jar'
    width = 300
    height = 300 />
</html>

我缺少什么嗎? 還是需要改變? 我期待可以提供的任何幫助,並且請嘗試對它進行解釋,而不是告訴我答案,以便我學習。 :D

這是Java colsole Java插件10.5.1.255(使用JRE版本1.7.0_05-b05 Java HotSpot(TM)客戶端VM)中的內容

用戶主目錄= C:\\ Users \\ Jihoon

c:清除控制台窗口f:在完成隊列上完成對象g:垃圾回收h:顯示此幫助消息l:轉儲類加載器列表m:打印內存使用o:觸發日志記錄q:隱藏控制台r:重新加載策略配置s:轉儲系統和部署屬性t:轉儲線程列表v:轉儲線程堆棧x:清除類加載器緩存

0-5:將跟蹤級別設置為

plugin2manager.parentwindowDispose

Chrome開發人員的幫助沒有任何問題。 當我單擊小程序上的詳細信息時,它只是顯示classnotfounfexception:JavaQuiz

code屬性應指向完全限定的類名,而不是jar。

另外,您還應注意localhost...這意味着j.jar位於html所在的同一目錄中的一個名為localhost的文件夾中。 還是說http://localhost:80/applet//applet/

<html>
<applet 
    archive="http://localhost/applet/JavaQuiz.jar" 
    code="JavaQuiz.class"
    width = 300
    height = 300 />
</html>

我認為最大的問題是沒有http://但我不確定其他參數。 一起玩。

因此,在您的情況下,將codebase="localhost/applet/"更改為codebase="http://localhost/applet/"

<hmtl>應該是<html>

強制性的“代碼”屬性(在示例中缺失)應指向您要運行的類(擴展JApplet的類)。 就像是:

<html>
<applet codebase="localhost/applet/" code="yourpackage.YourApplet.class"
    code = 'JavaQuiz.jar' 
    archive = 'JavaQuiz.jar'
    width = 300
    height = 300 />
</html>

http://localhost/applet/JavaQuiz.jar在部署時將無法使用。

<html>
<applet 
    codebase="."
    archive="JavaQuiz.jar" 
    code="JavaQuiz"
    width = 300
    height = 300 >
</applet>
</html>

由於代碼庫指向“當前目錄”,因此它將在本地主機以及實時部署的Applet上運行。

要點,其中一些已經提到:

  1. code屬性應該是applet類的完全限定的類名,結尾不帶.class
  2. applet元素不能為“自動關閉”-始終使用</applet>關閉該元素。
  3. 如果省略,則代碼庫默認為HTML所在的目錄,因此將codebase="." 是多余的。 沒有它,它也應該工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM