Battlecode 2015 ant run 在 Win32ShellFolder2 中导致 nullPointerException class

Battlecode 2015 ant run causes nullPointerException in Win32ShellFolder2 class

我想参加今年的battlecode 2015。 我已经下载了项目并在 eclipse 中运行了 ant (build.xml) 文件。 这是文件:http://pastebin.com/M5YcJTdz

这里是导致异常的部分:

  <target name="run" depends="build">
    <java 
     classpathref="classpath.run"
     fork="yes"
     classname="battlecode.client.Main">
      <jvmarg value="-Dapple.awt.graphics.UseQuartz=true"/>
      <jvmarg value="-Dbc.server.map-path=${path.maps}"/>
      <jvmarg value="-Xmx256m"/> 
      <jvmarg value="-Djava.library.path=${path.lib}" />
      <arg line="-c bc.conf"/>
    </java>
  </target>

这里是个例外:

Buildfile: C:\Robot\Robot\Battlecode\build.xml
-init:
build-scala:
build:
run:
     [java] x86
     [java] Exception in thread "main" java.lang.NullPointerException
     [java]     at sun.awt.shell.Win32ShellFolder2.access0(Win32ShellFolder2.java:72)
     [java]     at sun.awt.shell.Win32ShellFolder2.call(Win32ShellFolder2.java:242)
     [java]     at sun.awt.shell.Win32ShellFolder2.call(Win32ShellFolder2.java:237)
     [java]     at java.util.concurrent.FutureTask.run(FutureTask.java:266)
     [java]     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
     [java]     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
     [java]     at sun.awt.shell.Win32ShellFolderManager2$ComInvoker.run(Win32ShellFolderManager2.java:511)
     [java]     at java.lang.Thread.run(Thread.java:745)
     [java] Java Result: 1
BUILD SUCCESSFUL
Total time: 2 seconds

使用 Windows 8,最新的 eclipse,Java SDK 7 和 8。尝试了 64 位和 32 位架构。

其他用户好像没有这样的问题。

客户端源代码: https://github.com/battlecode/battlecode-client/blob/master/src/main/battlecode/client/Main.java

似乎无法访问其中一个特殊 Windows shell 文件夹。以管理员身份或从其他用户帐户尝试 运行 Ant/Java 进程,以防您当前的用户帐户以某种方式被盗用。

或者您可以尝试以某种方式跟踪代码(我在这里挥手,假设您不想这样做...)找出它正在吐出的系统或用户文件夹,并从那里开始。