私は、XML ファイルに出力する JSLint ジョブを動作させようとする任務を負っていますが、ちょっとした障害にぶつかりました。「CreateProcess エラー = 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
誰かが提供しなければならないかもしれない洞察をありがとう!