使用eclipse开发编译,通过ie运行程序时报错误如下:
    java.lang.ExceptionInInitializerError thrown while loading gnu.io.RXTXCommDriver
java.lang.ExceptionInInitializerError
at com.tvapplet.TvSendCmdApplet.getSerialPort(TvSendCmdApplet.java:142)
at com.tvapplet.TvSendCmdApplet.init(TvSendCmdApplet.java:95)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.security.AccessControlException: access denied (java.lang.RuntimePermission loadLibrary.rxtxSerial)
at java.security.AccessControlContext.checkPermission(Unknown Source)
at java.security.AccessController.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkLink(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at gnu.io.CommPortIdentifier.<clinit>(CommPortIdentifier.java:83)
... 4 more   这种错误是因为什么原因造成的?谢谢

解决方案 »

  1.   

    在您系统的java运行时包修改一个关于安全的一文件.
    具体做法是:找到您的ie浏览器使用的jre包,我家的是:D:\Program Files\Java\jre1.6.0\lib\security,在这个包下面有个java.policy文件,打开编辑它:
    在grant里增加2个语句:
    permission java.lang.RuntimePermission "accessClassInPackage.sun.jdbc.odbc"; 
    permission java.util.PropertyPermission "file.encoding", "read"; 
    再关闭ie,重新运行就可以解决这个问题.我在家里的机子中,增加以后就没有在出现上面的错误信息了.
     
    增加第二个语句是因为让applet能读一些二进制文件.不然可能会出现
    java.security.AccessControlException:
      access denied (java.lang.RuntimePermission
      file.encoding read)
    错误.
    你试试
      

  2.   

    使用了,还是不行,错误和这个问题一样
      http://www.javafr.com/forum/sujet-APPLET-JAVA-JAVA-SECURITY-ACCESSCONTROLEXCEPTION_953244.aspx