【问题标题】:AccessControlException when adding code to MouseMotionListener Java向 MouseMotionListener Java 添加代码时出现 AccessControlException
【发布时间】:2014-03-20 19:52:46
【问题描述】:

最近我一直在用 java 的 applet 处理一些侦听器。我对 keylisteners 没有任何问题,所以我开始使用 mousemotionlisteners。但是,只要我在 MouseMoved() 方法中添加代码,我就会在运行时收到 AccessControlException。代码编译得很好。这是 MouseMotionListener 中的代码:

public void mouseMoved( MouseEvent e){
     mouseX = e.getXOnScreen();
     mouseY = e.getYOnScreen();
     move();
 }

我在我的家用电脑上执行此操作,但同样的代码在我学校的电脑上也可以使用。这是异常错误:

java.security.AccessControlException: access denied ("java.awt.AWTPermission"      "watchMousePointer")
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:372)
at java.security.AccessController.checkPermission(AccessController.java:559)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
at java.awt.MouseInfo.getPointerInfo(MouseInfo.java:79)
at Test.<init>(Test.java:35)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at java.lang.Class.newInstance(Class.java:374)
at sun.applet.AppletPanel.createApplet(AppletPanel.java:793)
at sun.applet.AppletPanel.runLoader(AppletPanel.java:722)
at sun.applet.AppletPanel.run(AppletPanel.java:379)
at java.lang.Thread.run(Thread.java:744)

有人知道为什么我不能运行这个程序吗?我读过关于授予自己权限的信息,但没有人解释如何去做。

谢谢!

【问题讨论】:

    标签: java exception


    【解决方案1】:

    摆脱 SecurityManager,或在您的 .policy 文件中授予自己该权限。

    【讨论】:

    • 这是问题所在,“授予自己该权限”没有人解释如何做到这一点
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-07
    • 2021-03-13
    • 1970-01-01
    • 2017-03-10
    • 1970-01-01
    • 2012-03-30
    • 2014-10-10
    相关资源
    最近更新 更多