2010-02-21 112 views
2

我有下面的方法是为了将信息追加到文件,但我得到下面的错误。在该方法中我使用的robocode API从java.io.InputStream中继承Java文件输入和输出

所有的文件和文件夹的权限似乎罚款,该文件确实存在

static public void logInfo(String info) 
{   

    RobocodeFileWriter in; 
    try { 
     in = new RobocodeFileWriter("log.txt"); 
     in.append(info); 
    } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    }  


} 

系统的组成部分:发生错误在itc.solomon初始化期间 SYSTEM:java.security.AccessControlException:阻止itc.solomon访问:(java.io.FilePermission log.txt read):您只能读取您自己的根包目录中的文件。 java.security.AccessControlException:阻止itc.solomon访问:(java.io.FilePermission log.txt read):您只能读取您自己的根包目录中的文件。 在robocode.security.RobocodeSecurityManager.handleSecurityProblem(未知来源) 在robocode.security.RobocodeSecurityManager.checkPermission(未知来源) 在java.lang.SecurityManager.checkRead(SecurityManager.java:888) 在java.io.File的。存在(File.java:748) 在robocode.RobocodeFileOutputStream(未知来源) 在robocode.RobocodeFileOutputStream(未知来源) 在robocode.RobocodeFileWriter(未知来源) 在itc.CFile.logInfo(CFile.java。: 16) at itc.solomon。(solomon.java:43) 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:532) at java.lang.Class.newInstance0(Class。的java:372) 在java.lang.Class.newInstance(Class.java:325) 在robocode.peer.proxies.HostingRobotProxy.loadRobotRound(未知来源) 在robocode.peer.proxies.HostingRobotProxy.run(未知来源) at java.lang.Thread.run(Thread.java:636)

回答

1

我已经搜索了一下这个问题。似乎there's a bug in the robocode package, awkwardly solved by

while (!dataIsLoaded) { 
    try { 
     tryToReadData; 
     dataIsLoaded = true; 
    } catch (AnyException e) {} 
} 

这是要解决的问题,原因是多方面的(忽略异常,忙等待,等),更理智的方式将被降级的robocode包到以前的一个相当可怕的方式,更稳定的版本。

See search results here

+0

我觉得上面的问题与wiki上的问题不一样。无论如何,wiki正在谈论版本1.4.2。 Robocode目前是1.7.2。从那时起,人们学会了正确地报告错误。 https://sourceforge.net/tracker/?group_id=37202&atid=419486 – 2010-03-09 11:20:40