尝试写入文件时出现 NullPointerException:
RobocodeFileWriter fileWriter=new RobocodeFileWriter("test.txt");
for (int i = 0; i < state.countstates; i++)
for (int j = 0; j < state.countactions; j++)
fileWriter.write((int) table[i][j]);
}
例外:
java.lang.NullPointerException
at net.sf.robocode.host.security.ThreadManager.createRobotFileStream(ThreadManager.java:136)
at robocode.RobocodeFileOutputStream.<init>(RobocodeFileOutputStream.java:88)
at robocode.RobocodeFileOutputStream.<init>(RobocodeFileOutputStream.java:69)
at robocode.RobocodeFileWriter.<init>(RobocodeFileWriter.java:69)
at QTable.saveData(QTable.java:79)
at MyFirstRobot.saveToFile(MyFirstRobot.java:471)
at MyFirstRobot.onDeath(MyFirstRobot.java:414)
at robocode.DeathEvent.dispatch(DeathEvent.java:63)
at robocode.Event$HiddenEventHelper.dispatch(Event.java:259)
at net.sf.robocode.security.HiddenAccess.dispatch(HiddenAccess.java:191)
at net.sf.robocode.host.events.EventManager.dispatch(EventManager.java:422)
at net.sf.robocode.host.events.EventManager.processEvents(EventManager.java:376)
at net.sf.robocode.host.proxies.BasicRobotProxy.executeImpl(BasicRobotProxy.java:412)
at net.sf.robocode.host.proxies.BasicRobotProxy.execute(BasicRobotProxy.java:121)
at robocode.AdvancedRobot.execute(AdvancedRobot.java:549)
at MyFirstRobot.run(MyFirstRobot.java:68)
at net.sf.robocode.host.proxies.HostingRobotProxy.callUserCode(HostingRobotProxy.java:274)
at net.sf.robocode.host.proxies.HostingRobotProxy.run(HostingRobotProxy.java:221)
at java.lang.Thread.run(Thread.java:695)
即使我通过传递 -DNOSECURITY=true 禁用安全管理器也会发生此异常 我的机器人代码版本是 1.8.3.0 并在 Mac 上进行开发。任何帮助表示赞赏。