Запуск сторонних программ из Eclipse

14 октября, 2008
eclipse cli

Современные IDE буквально «нашпигованы» различными возможностями. Тем не менее, предусмотреть все невозможно и возникают ситуации, когда нужно использовать дополнительные программы. Речь, прежде всего, идет о различных консольных утилитах.

Естественно, гораздо удобнее, запускать эти утилиты прямо из меню IDE, а не из консоли. Эта заметка о том, как добавить такую возможность в Eclipse.

Прежде чем приступать к настройке Eclipse, необходимо определиться с параметрами, которые нужно передавать программе.

В качестве примера рассмотрим запуск Phing (о нем речь шла в прошлой статье).

Формат команды такой:

phing -f mybuildfile.xml mytarget

Сначала идет имя программы, затем имя build файла (mybuildfile.xml) и название задачи которую нужно выполнить (mytarget). Тут предполагается:

1) что система знает, где находится phing (путь указан в переменной PATH), если это не так, то необходимо явно указать путь к нему;

2) вы выполняете команду в папке, в которой находится файл mybuildfile.xml (в противном случае нужно указать его размещение).

Кроме того, поддерживается сокращенный вариант записи команды.

Например, если опустить название файла, то Phing попытается использовать файл build.xml. Название задачи тоже можно не указывать. В этом случае её имя будет взято из атрибута default тега project.

Теперь посмотрим, как запустить эти команды из Eclipse. Для начала сделаем вариант запуска без параметров.

Открываем меню Run – External Tools – Open External Tools Dialog…

В левой части окна выбираем пункт Program и нажимаем кнопку «New launch configuration» (обведена зеленым).

В правой части окна указываем:

1) Имя задачи (поле Name).

2) Размещение программы (Location). Я указал абсолютный путь к файлу phing.bat.

3) Рабочую папку (Working Directory). Чтобы её выбрать нажимаем кнопку «Browse Workspace» (обведена синим) и выбираем текущий проект.

4) Нажимаем Apply и закрываем это окно.

Описанные настройки показаны на скриншоте.

external tools thumb

Теперь нажимаем на панели инструментов на стрелку рядом с кнопкой, на которой нарисованы зеленая стрелка и чемодан.

run phing menu

Как видите, в первом пункте меню появилась наша новая команда (Phing).

Теперь добавим возможность запуска произвольной задачи из build файла. Для этого снова открываем Open External Tools Dialog и создаем ещё одну команду (Phing custom). Настройки такие же, только в поле Arguments задаем параметр ${string_prompt}. Его можно выбрать, нажав на кнопку Variables (обведена красным).

external tools custom thumb

После запуска этой команды будет появляться окно, в которое нужно ввести имя задачи.

Таким же образом, можно добавить поддержку практически любых консольных утилит в Eclipse.

Удачи!

Понравилась статья? Подписывайтесь на продолжение rss link !

Или на мой твиттер twitter link

]]>

Добавьте эту страницу в google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

]]>

Опубликовано в Eclipse, Phing, Web разработка Комментарии (10) »

]]>

Комментарии (10)

Вы можете отслеживать обсуждение записи с помощью RSS 2.0 rss link

Вы также можете оставить комментарий, или трекбек с Вашего сайта.

]]>
  1. Непонятно только как это все организовать.

  2. А что вам не понятно? Задайте конкретный вопрос, и обязательно подскажем.

  3. Я тоже не понял, в чем вопрос. Есть программа, которую нужно запустить, создаете новую конфигурацию запуска (как показано на скриншотах) и работаете.

  4. asterix

    Здравствуйте! Спасибо за статью, впринципе до этого дошел сам, но теперь хоть понял что это правильное направление.

    - Есть проект на пхп+javascript+css+etc. вобщем куча файлов, и нужно по мере внесения изменений синхронизировать изменееные файли по фтп с сервером (еклипс работает под виндой).
    - Очень-очень хочется делать это нажатием одной кнопки.

    Я пытался сделать сценарий .cmd который использует встроенный виндовский фтп клиент, но это мне кажется страшным извращением.

    может что-нибцдь подскажете?

  5. использование дополнительных утилитов как никак кстати, вы бьете в корень.я имела представление о Phing, но с вашей помощью понял много нюансов, спасибо, продолжайте в том же духе

  6. Andrew

    Скажите, а почему phing, а не ant? Запуская phing как external tool я не вижу никаких преимуществ перед ant.

    • phing по-сути тот же ant, портированный под PHP. Преимущества появляются когда вам нужно написать свою задачу и удобнее это сделать на PHP, а не на Java.

]]>

Оставить комментарий

* - обязательные для заполнения поля

]]>