[英]java.io.IOException: Cannot run program “/usr/bin/sh”: java.io.IOException: error=2, No such file or directory
[英]ANT Execute failed: java.io.IOException: Cannot run program “cp ”: java.io.IOException: error=2, No such file or directory
我正在嘗試使用ANT將文件從Linux上的一個目錄復制到另一個目錄。
首先,我使用了復制任務,它可以正常工作,但未保留文件模式。 然后我更改為使用,這就是我遇到的問題。
我的目標是:
<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>
我得到的輸出是:測試:[echo] / Users / bpel / mywork / projects / bpel-psr / utils
/utils/build.xml:38:執行失敗:java.io.IOException:無法運行程序“ cp”:java.io.IOException:error = 2,沒有這樣的文件或目錄
我也嘗試過類似的方法:
<exec executable="cp -p /tmp/jmap.dat /tmp/jmap.dat1"/>
而且也不起作用,似乎找不到cp
命令,但是如果我手動運行cp -p /tmp/jmap.dat /tmp/jmap.dat1
,它就可以正常工作。
我一直在四處搜尋,沒有發現任何幫助。
關於stackoverflow的類似問題不能解決我的問題:
cp
命令后有一個空格:
<exec executable="cp " os="Linux" spawn="yes">
這表明它運行了一個名為"cp "
的命令(帶有空格)。 錯誤消息確認了這一點:
無法運行程序
"cp "
實際上,答案是在問題的主題中:)
刪除空間,應該沒問題:
<exec executable="cp" os="Linux" spawn="yes">
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.