ANT Не удалось выполнить: java.io.IOException: не удалось запустить программу "cp": java.io.IOException: error = 2, такого файла или каталога нет. - PullRequest
2 голосов
/ 13 июля 2010

Я пытаюсь использовать 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>

Вывод, который я получил: test: [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 не решаетмоя проблема:

1 Ответ

4 голосов
/ 13 июля 2010

У вас есть пробел после команды cp:

<exec executable="cp " os="Linux" spawn="yes">

Это говорит о том, что вы запускаете команду с именем "cp " (с пробелом).Это подтверждается сообщением об ошибке:

Невозможно запустить программу "cp "

На самом деле ответ есть в теме вопроса:)

Уберите место, должно быть все в порядке:

<exec executable="cp" os="Linux" spawn="yes">
...