【发布时间】: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)
有人知道为什么我不能运行这个程序吗?我读过关于授予自己权限的信息,但没有人解释如何去做。
谢谢!
【问题讨论】: