У меня недавно была похожая проблема.В системе Windows с Eclipse все сводится к проверке:
- , что ANT работает
- SCP работает сам по себе,
- , что ANT и SCP работают в Eclipseсреда разработки.
Простой файл ANT может быть запущен в Eclipse с именем build.xml
.Пример содержимого:
<?xml version="1.0" encoding="UTF-8"?>
<project default="main" basedir=".">
<echo message="A 'testant' task."/>
<target name="main" >
<scp trust="yes" file="testfileinRootDirectory.xml" todir="username:password@hostname.org.domain:/home/username/existingfolder"/>
</target>
</project>
Если вы можете запустить это из Eclipse, то у вас работает какая-то форма ANT, а также работает какая-то форма WinSCP.
Если вы не можетезаставьте его работать в Eclipse, затем откройте командное окно в каталоге, в котором находится build.xml, и запустите ant
из командной строки.(Он автоматически подберет и запустит файл build.xml).
Если он не работает, проверьте записи, имеющиеся у вас в Eclipse - возможно, он использует другой набор путей для ANT, чемзапуск командной строки Maven может быть.Из Eclipse посмотрите: Window |
Предпочтения |
Ant |
Runtime |
Изучение записей Classpath.
Домашняя запись Ant может быть специфичной для Eclipse: например: c:\eclipse\plugins\org.apache.ant_1.8.3_v20120321-1730\lib
Глобальные записи могут отличаться (например, место установки) - например, c:\dev\ant
- или там, где был установлен каталог% ANT_HOME% после установки.
Однако Eclipseвозможно, поиск файлов SCP в каталоге c:\Users\username\.ant\lib
.
Одно из возможных решений :
- Установите ANT в каталог c:\Users\username\.ant
- Установите для ANT_HOME значение c:\Users\username\.ant
. - В Eclipse установите для параметра Ant Home (тот же экран, что и для параметров времени выполнения) тот же параметр, что и в командной строке (c:\Users\username\.ant
).
Примечание. Возможный недостаток заключается в том, что пользовательские и системные настройки могут быть одинаковыми для ANT, однако в будущем вам просто нужно собрать дополнительные банки в одном месте, чтобы все заработало.
Тестирование Maven:
Как и в ответе Рагурама выше, важно правильно определить зависимости.Используйте полный пример кода со страницы Седрика Уолтера - Apache Maven скопирует локальный файл на сервер удаленного сервера, используя SSH