В моей компании постоянно возникают проблемы с перерывами в сборке в наших проектах Flex. Проблема главным образом возникает потому, что сборка, которую разработчики делают на своих локальных машинах, принципиально отличается от сборки, которая происходит на сборочной машине. Разработчики строят проекты, используя FlexBuilder/eclipse
, а сборочная машина использует компиляторы командной строки. Неизбежно, {projectname}-config.xml
и / или командный файл, который запускает сборку, не синхронизируются с файлами проекта, используемыми Eclipse, поэтому сборка завершается успешно на компьютере разработчика, но не на машине сборки.
Мы пошли по пути написания служебной программы для преобразования файлов проекта FlexBuilder в файл {projectname}-config.xml
, но это а) недокументированное и б) ужасный взлом.
Я искал ключ -dump-config, чтобы получить файлы конфигурации, но у него есть пара проблем: 1) Сгенерированный файл конфигурации имеет абсолютные пути, которые не работают в нашей среде (некоторые разработчики используют macs (некоторые машины с Windows) и 2) работают правильно только при запуске из IDE, поэтому их нельзя встроить в процесс сборки.
Завтра мы обсудим пару вариантов, ни один из которых мне безумно не нравится:
a) Добавить событие после регистрации в Subversion, чтобы удалить эти абсолютные ссылки, или
b) добавить процесс предварительной сборки, удаляющий абсолютную ссылку.
Не могу поверить, что мы первая группа разработчиков, столкнувшаяся с этой проблемой, но я не могу найти каких-либо хороших решений в Google. Как другие группы справились с этой проблемой?