Eclipse: запуск конфигурации запуска из Builder
В настоящее время я экспериментирую с генерацией кода через XSLT. Для этого я использую инструменты веб-разработчика Eclipse (WDT), которые не только позволяют запускать XSL-преобразования из IDE, но и позволяют определять их с помощью конфигураций запуска, где вы можете довольно удобно указывать такие вещи, как входные и выходные файлы.

Идея состоит в том, чтобы объединить эти шаги преобразования в "стартовую группу", чтобы все они могли быть выполнены одновременно. Однако, как мы говорим о генерации кода, было бы неплохо, если бы эта группа запуска (которая является ничем иным, как другой конфигурацией запуска, экспортируемой как .запуск файла) будет выполняться автоматически , когда эти файлы могли измениться.
Мой текущий подход заключается в том, чтобы сделать это на этапе сборки, то есть: добавление компоновщика в проект, который выполняется непосредственно перед Java builder и который выполняет заданную конфигурацию запуска. Я знаю, как добавить дополнительный конструктор, но понятия не имею, как это сделать. с этого момента переходите к конфигурации запуска. Итак: Можно ли выполнить конфигурацию запуска от одного из строителей проекта?
Дополнительные примечания : я нашелAnt4Eclipse , которыйможет быть способен к тому, что я хочу, но он не обновлялся в течение очень долгого времени, и, похоже, он фокусируется на способности считывать данные из конфигураций запуска, а не просто выполнять их.
Кроме того, могут быть и другие подходы, такие как запуск XSL преобразования из конструктора "вручную" с помощью внешнего инструмента, управляемого командной строкой. Я был бы благодарен и за такие решения, однако, чем более общее решение, тем лучше.
2 ответов:
Технически это должно быть возможно.
Вы можете добавить код в свою логику сборки для вызова данной конфигурации запуска. Это пример того, как получить и запустить заданную конфигурацию запуска:
Приведенный выше код взят из проекта, над которым я недавно работал. I позволяет получить конкретную конфигурацию запуска и настроить ее по своему усмотрению. Вы можете добавить этот код в свой метод сборки в своем конструкторе.ILaunchManager launchManager = DebugPlugin.getDefault().getLaunchManager(); ILaunchConfiguration launchConfiguration = launchManager.getLaunchConfiguration("launchConfigName"); ILaunchConfigurationWorkingCopy launchConfigWorkingCopy = launchConfiguration.getWorkingCopy(); launchConfigWorkingCopy.setAttributes(launchAttributes); // launchAttributes is a Map<String,String> ILaunchConfiguration newLaunchConfig = launchConfigWorkingCopy.doSave(); ILaunch launch = newLaunchConfig.launch(launchMode, new NullProgressMonitor(), true);Единственным недостатком является то, что он требует, чтобы запуск конфигурация уже существует. В качестве альтернативы, вы можете "создать" один, если он не существует, поместив его .запустите файл в папке
.metadata/.plugins/org.eclipse.debug.core/.launches/. Таким образом, диспетчер запуска сможет найти его.
Может быть, я неправильно понял, но я думаю, что вы ищете способ импортировать конфигурацию запуска как конструктор. Вот как это сделать:
Откройте свойства вашего проекта, затем выберите Builders слева. При нажатии кнопки импорт отображается список конфигураций запуска. Выберите конфигурацию и дважды нажмите кнопку ОК.
Выберите новый конструктор из списка и нажмите Edit , затем на вкладке Build Options :
- укажите рабочий набор релевантных ресурсов-это те файлы, которые Eclipse будет отслеживать изменения и автоматически запускать конструктор
- снимите флажок Запуск в фоновом режиме , чтобы заставить Eclipse ждать этого СТРОИТЕЛЬ, чтобы закончить перед началом следующего
- при необходимости можно также перенаправить стандартный вывод в файл для отладки
Примечание: изменения, внесенные в конфигурацию запуска после импорта ее в качестве конструктора, не будут распространяться на строитель, вам, скорее всего, придется повторно импортировать его.
Comments