Интеграция Adobe Flex / AIR Maven - PullRequest
2 голосов
/ 27 августа 2009

Я пишу приложение Adobe AIR, которое необходимо встроить в CI, используя maven и nexus. Я пытался следовать этой статье , которая является самой последней статьей из источника, но я все еще не понимаю этих вещей:

  1. Первый и второй примеры pom.xml в статье находятся в одном и том же файле pom.xml?
  2. Как получить зависимости Flex SDK от моего CI?

Было бы замечательно, если бы кто-то выполнил полную настройку проекта и прошел через все это.

1 Ответ

2 голосов
/ 28 августа 2009

Этот блог содержит полезную информацию о создании приложений Air с Maven 2.

Что касается ваших пронумерованных вопросов

Часть 1: два POM в учебнике разные. Первый создает SWF-пакет, содержащий компоненты вашего приложения. Второе POM имеет зависимость от пакета swf (обратите внимание на зависимость во втором POM для artifactId Air в первом). Второй POM определяет обработку для распаковки пакета swf (используя плагин зависимостей), затем использует плагин exec для вызова adt для содержимого распакованного пакета.

Таким образом, описанный процесс состоит из двух частей. Первый POM упаковывает SWF-файлы, чтобы они были доступны в хранилище. Второе POM извлечет все пакеты, необходимые из репозитория Maven, и вызовет adt для их компиляции. Поэтому, если у вас несколько пакетов Air, второе POM можно изменить, чтобы загрузить дополнительные пакеты и скомпилировать их.

Часть 2. Большинство необходимых вам зависимостей находятся в общедоступном репозитории Sonatype * 1012, одно известное исключение, похоже, представляет собой adt.jar. Вы можете развернуть adt.jar в менеджере репозитория Maven, например, Nexus , используя deploy-file target плагина развертывания.

Это приведет к развертыванию adt.jar в хранилище с учетными данными, соответствующими учебнику:

mvn deploy:deploy-file -Durl=http://path/to/repository -DrepositoryId=[some.id]
    -Dfile=adt.jar -DgroupId=com.adobe.flex.compiler -DartifactId=adt
    -Dversion=3.3.0.4852 -DgeneratePom=true -DgeneratePom.description="Flex ADT"

Чтобы сослаться на публичный репозиторий Nexus, добавьте декларацию репозитория в settings.xml или pom.xml, например:

<repositories>
  <repository>
    <id>nexus-public</id>
    <url>http://repository.sonatype.org/content/groups/public</url>
  </repository>
</repositories>
...