| « Package organization | Flex-Mojos. Пример сборки flex modules. » |
Flex mojos 3.1 released
Релиз
Вышла новая версия Flex Mojos, теперь разработка flexmojos проходит под крышой
sonatype.org, и у алмаза появилась огранка)).
В извесную книгу о maven от sonatype добавленна глава про работу с flexmojos
Что изменилось?
Из полезных дополнений хочу обратить внимание на archetypes:
- flexmojos-archetypes-library проект swc библиотеки
- flexmojos-archetypes-application простой swf проект
- flexmojos-archetypes-modular-webapp многомодульный проект, состоит из swc, swf и war
archetypes - это maven комманда, которая создает проект с нуля. Для её запуска необходим установленный maven.
Выполните следующую комманду в командной строке (имя вашего пакета, верисю и артифакт id придется ввести в режиме диалога):
XML:
mvn archetype:generate \ | |
-DarchetypeRepository=http://repository.sonatype.org/content/groups/public \ | |
-DarchetypeGroupId=org.sonatype.flexmojos \ | |
-DarchetypeArtifactId=flexmojos-archetypes-library \ | |
-DarchetypeVersion=3.1.0 |
Комментарий
что бы проект собирался необходимо определить sonatype репозиторий в ~\.m2\settings.xml
XML:
<repositories> | |
<!−− ... −−> | |
| |
<repository> | |
<id>flex-mojos-repository</id> | |
<url>http://repository.sonatype.org/content/groups/public</url> | |
<releases> | |
<enabled>true</enabled> | |
</releases> | |
<snapshots> | |
<enabled>true</enabled> | |
</snapshots> | |
</repository> | |
| |
<pluginRepositories> | |
| |
<!−− ... −−> | |
| |
<pluginRepository> | |
<id>flex-mojos-repository</id> | |
<url>http://repository.sonatype.org/content/groups/public</url> | |
<releases> | |
<enabled>true</enabled> | |
</releases> | |
<snapshots> | |
<enabled>true</enabled> | |
</snapshots> | |
</pluginRepository> | |
| |
<!−− ... −−> | |
| |
</pluginRepositories> |
после этого можно запускать mvn install.
Для пользователей mac, что бы запускались тесты, необходимо добавить путь к flash player в PATH.
Code:
export PATH="set your path here/Adobe Flex Builder 3 Plug-in/Player/mac/10/mac/Flash Player.app/Contents/MacOS":$PATH |
и добавить в pom.xml следующие сторики:
XML:
... | |
<configuration> | |
<flashPlayerCommand>Flash Player</flashPlayerCommand> | |
</configuration> | |
... |
И на десерт, команда:
Code:
mvn flexmojos:flexbuilder |
создает flexbuilder проект. Единственно есть небольшой баг.
Придется поправить в FlexBuilder откройте
Project->Properties->Flex Compiler и исправьте в additional compiler arguments:
-localeen_US на -locale en_US
Тем кто переходит с версии flexmojos 2.x
Изменился репозиторий на http://repository.sonatype.org/content/groups/public
Изменился пакет и наименование flexmojos:
XML:
<groupId>info.flex-mojos</groupId> | |
<artifactId>flex-compiler-mojo</artifactId> |
теперь будет:
XML:
<groupId>org.sonatype.flexmojos</groupId> | |
<artifactId>flexmojos-maven-plugin</artifactId> |
вместо специализированных плагинов типа:
XML:
<groupId>info.flex-mojos</groupId> | |
<artifactId>html-wrapper-mojo</artifactId> |
теперь используются соответствующие goals, соответственно
mvn flexmojos:wrapper
Пакеты зависимостей для тестирования тоже поменялись:
XML:
<dependency> | |
<groupId>info.flex-mojos</groupId> | |
<artifactId>testing-support</artifactId> | |
<version>${flex-mojos.version}</version> | |
<type>swc</type> | |
<scope>test</scope> | |
</dependency> |
теперь:
XML:
<dependency> | |
<groupId>org.sonatype.flexmojos</groupId> | |
<artifactId>flexmojos-unittest-support</artifactId> | |
<version>${flex-mojos.version}</version> | |
<type>swc</type> | |
<scope>test</scope> | |
</dependency> |
Резюме
В целом изменения меня очень радуют, всё стало проще и логичней, в добавок sonatype обещают интеграцию с m2e в версии 0.9.8.
Первоисточники
flexmojos - blog
советы по переходу с flexmojos 2.x
страница проекта flexmojos
глава из книги о maven, по работе с flexmojos
p/s
Версия новая и интересная буду очень рад если поделитесь опытом и замечаниями по работе с ней.
2 комментариев
Все еще не добавили нормальную поддержку AIR, хотя она и заявляется. Для паковки приходится писать в ант стиле из-за закрытой лицензии.Что-бы добавить в проект поддержку mojos не нужно править settingx.xml Лучше прописать путь до него в самом pom.xml, что-бы проект собирался без хитрых манипуляций с настройками.
UPD: Вышел flexmojos 3.5, где добавился sign-air goal