2

我的任务是尝试让 JSLint 工作输出到 XML 文件,但我遇到了一些障碍。我遇到了返回“CreateProcess error=206,文件名或扩展名太长”的错误。

我的意图是尝试抓取文件夹中的所有内容,而不必将其拆分为单独的文件路径,尽管我认为这可能是我必须做的。

我的基本蚂蚁目标如下:

<target name="d">
  <fileset dir="../" id="src.files">
    <include name="**/*.js"/>
  </fileset>
  <pathconvert pathsep=" " refid="src.files" property="spacedelim"/>
<exec executable="java" output="jslint.xml">
  <arg line="-jar jslint4java-2.0.2.jar --report xml ${spacedelim}" />
</exec>
</target>

spacedelim 返回包含 js 文件的文件夹内所有以 js 结尾的文件的空格分隔列表。如果我粘贴 ${spacedelim} 包含的文件列表,那么即使在调用 ant 目标时它也可以正常工作......所以我真的不知道该怎么做。

这是完整的错误:

BUILD FAILED
D:\dev\features\2011.2\webui\wmd\webclient\jslint4java-2.0.2\build.xml:53: Execu
te failed: java.io.IOException: Cannot run program "java": CreateProcess error=206, The filename or extension is too long
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:460)
    at java.lang.Runtime.exec(Runtime.java:593)
    at org.apache.tools.ant.taskdefs.Execute$Java13CommandLauncher.exec(Exec
ute.java:862)
    at org.apache.tools.ant.taskdefs.Execute.launch(Execute.java:481)
    at org.apache.tools.ant.taskdefs.Execute.execute(Execute.java:495)
    at org.apache.tools.ant.taskdefs.ExecTask.runExecute(ExecTask.java:631)
    at org.apache.tools.ant.taskdefs.ExecTask.runExec(ExecTask.java:672)
    at org.apache.tools.ant.taskdefs.ExecTask.execute(ExecTask.java:498)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.jav
a:106)
    at org.apache.tools.ant.Task.perform(Task.java:348)
    at org.apache.tools.ant.Target.execute(Target.java:390)
    at org.apache.tools.ant.Target.performTasks(Target.java:411)
    at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399)
    at org.apache.tools.ant.Project.executeTarget(Project.java:1368)
    at     org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
    at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
    at org.apache.tools.ant.Main.runBuild(Main.java:809)
    at org.apache.tools.ant.Main.startAnt(Main.java:217)
    at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
    at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)
Caused by: java.io.IOException: CreateProcess error=206, The filename or extension is too long
    at java.lang.ProcessImpl.create(Native Method)
    at java.lang.ProcessImpl.<init>(ProcessImpl.java:81)
    at java.lang.ProcessImpl.start(ProcessImpl.java:30)
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:453)
    ... 24 more

Total time: 4 seconds

感谢任何人提供的任何见解!

4

0 回答 0