0

我在applet的工作,當我使用Eclipse運行它,我沒有任何問題,但是當我嘗試加載在我的Internet Explorer瀏覽器的小程序,它給了我這個錯誤:java.lang.reflect.InvocationTargetException?

java.lang.reflect.InvocationTargetException 

我不知道該怎麼做,爲什麼不使用我的瀏覽器,而使用Eclipse。

有什麼想法?

我運行它使用appletviewer和問題出現時,我按退出按鈕,我必須退出遊戲。它實際上並沒有退出遊戲......現在我更加失落..

-------------堆棧跟蹤

C:\Course Technology\src>appletviewer TestJAlienHunt.html 
Exception in thread "AWT-EventQueue-1" java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "exitVM.0") 
    at java.security.AccessControlContext.checkPermission(AccessControlContext.java:366) 
    at java.security.AccessController.checkPermission(AccessController.java:555) 
    at java.lang.SecurityManager.checkPermission(SecurityManager.java:549) 
    at java.lang.SecurityManager.checkExit(SecurityManager.java:761) 
    at java.lang.Runtime.exit(Runtime.java:105) 
    at java.lang.System.exit(System.java:960) 
    at JAlienHunt.actionPerformed(JAlienHunt.java:97) 
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018) 
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341) 
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) 
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) 
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252) 
    at java.awt.Component.processMouseEvent(Component.java:6505) 
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3321) 
    at java.awt.Component.processEvent(Component.java:6270) 
    at java.awt.Container.processEvent(Container.java:2229) 
    at java.awt.Component.dispatchEventImpl(Component.java:4861) 
    at java.awt.Container.dispatchEventImpl(Container.java:2287) 
    at java.awt.Component.dispatchEvent(Component.java:4687) 
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832) 
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492) 

    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422) 
    at java.awt.Container.dispatchEventImpl(Container.java:2273) 
    at java.awt.Component.dispatchEvent(Component.java:4687) 
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:703) 
    at java.awt.EventQueue.access$000(EventQueue.java:102) 
    at java.awt.EventQueue$3.run(EventQueue.java:662) 
    at java.awt.EventQueue$3.run(EventQueue.java:660) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) 
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87) 
    at java.awt.EventQueue$4.run(EventQueue.java:676) 
    at java.awt.EventQueue$4.run(EventQueue.java:674) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) 
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:673) 
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244) 
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163) 
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThre ad.java:151) 
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147) 

    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139) 

    at java.awt.EventDispatchThread.run(EventDispatchThread.java:97) 
+0

你試過其他瀏覽器嗎?像谷歌瀏覽器? –

+0

您的applet是否嘗試訪問任何系統資源?也許讀/寫一些文件? –

+1

你能發佈完整的異常和代碼拋出異常嗎(如果可能的話)? – NeplatnyUdaj

回答

1

applet是不允許的致電System.exit。畢竟,其他人制作的其他小程序可能正在使用該JVM。

一般而言,小應用程序「端部」,當用戶選擇關閉或離開頁面(這將導致該applet的stop方法被調用)。操作結束時,小程序無法自行決定。

理論上,你可以讓你的applet顯示一個空白的矩形或其他東西,但實際上,一個「Exit」函數在applet中根本沒有意義,並且不應該在開頭。

+0

謝謝!你每天學習新的東西! – dalex

相關問題