CreateProcess error=206, The filename or extension

2020-01-29 00:25发布

I'm trying to call Findbugs via Ant, but receiving this error:

Cannot run program "C:\Program Files (x86)\Java\jre6\bin\javaw.exe" (in 
directory "H:\Users\MyName\workspace\MyProject"): 
CreateProcess error=206, The filename or extension is too long

How can I fix this? o.O

标签: ant findbugs
2条回答
Deceive 欺骗
2楼-- · 2020-01-29 01:00

I had the same problem. I used

<fileset dir="${basedir}/build">
  <include name="**/*.class"/>
</fileset>

inside findbugs target and it seems that there is too much .class files to be passed to findbug (?via command line?) because when I used

<fileset dir="${basedir}/build/com/domain/package">
  <include name="**/*.class"/>
</fileset>

that had low number of classes, the error was gone.

So, I solved the problem by making one jar file and feeding it to findbugs target with

<findbugs home="${findbugs.home}">
  ...
  <class location="${basedir}/targets/classes-to-analyze.jar"/>
</findbugs>
查看更多
Animai°情兽
3楼-- · 2020-01-29 01:22

I think one of the effective file paths are really long when java tries to compile clases.

One worth try is to put codebase in a directory such as C:\MyProject instead of something like C:\Users\MyName\workspace\MyProject

查看更多
登录 后发表回答