ANT Execute failed: java.io.IOException: Cannot run program "cp ": java.io.IOException: error=2, No such file or directory
You have a space after the cp
command:
<exec executable="cp " os="Linux" spawn="yes">
That's telling it run a command called "cp "
(with the space). This is confirmed by the error message:
Cannot run program
"cp "
In fact, the answer is in the subject of the question :)
Take the space out, it should be fine:
<exec executable="cp" os="Linux" spawn="yes">
Related videos on Youtube
Frank Fu
Updated on June 04, 2022Comments
-
Frank Fu almost 2 years
I'm trying to use ANT to copy files from one directory to another directory on Linux.
Firstly I used copy task, it works fine but the file mode is not preserved. Then I changed to use , and that's where I got stuck.
My target is like:
<target name="test"> <echo message="${basedir}"/> <exec executable="cp " os="Linux" spawn="yes"> <arg line="-p"/> <arg line="/tmp/jmap.dat"/> <arg line="/tmp/jmap.dat1"/> </exec> </target>
The output I got is: test: [echo] /Users/bpel/mywork/projects/bpel-psr/utils
/utils/build.xml:38: Execute failed: java.io.IOException: Cannot run program "cp ": java.io.IOException: error=2, No such file or directory
I also tried something like:
<exec executable="cp -p /tmp/jmap.dat /tmp/jmap.dat1"/>
and it doesn't work either, it seems cannot find
cp
command, but if I manually runcp -p /tmp/jmap.dat /tmp/jmap.dat1
, it just works fine.I've been googling around and found no help.
The similiar question on stackoverflow doesn't solve my problem: