Рубрика: maven

Flex-Mojos. Пример сборки flex modules.

Предисловие

Flex модули на мой взгляд очень интересная и многообразная тема. Кроме разделения функциональности приложения, их можно использовать для загрузки внешних стилей и ресурсов. Если есть задача динамического изменения внешнего вида и языка или уменьшение размера основного приложения.

Введение

В данной статье я расскажу как собирать приложение которое использует flex modules.
Проект так же будет использовать библиотеки и уменьшать размер flex модулей. Для этого мы не будем включать в модуль код, который уже используется в основном приложении. Итак приступим.

Структура проекта

Данная структура соответствует принципу один maven модуль один артефакт. Следовательно flex модуль представлен ввиде отдельного maven модуля.

flexModulesProject/
flexModulesProject/pom.xml - основной pom, собирающий весь проект
//загрузчик модульного приложения.
flexModulesProject/flexClient/… - основное flex приложение

flexModulesProject/flexModuleRed/… - flex модуль

flexModulesProject/flex/pom.xml - корневой pom для flex приложение.
flexModulesProject/flexCoreLib/… - flex библиотека которая используется в проекте.

Разбор конфигурационных файлов проекта

на родительский pom проекта, pom библиотеки и корневой pom для flex проектов использование модуля ни как не повлияло. Более подробное описание их структуры можно посмотреть здесь.

pom для flexClient

XML:

<?xml version="1.0"?>
<project>
     <parent>
   <groupId>com.mydomain.mypackage</groupId>
         <artifactId>my-flex-super-pom</artifactId>
         <version>1.0</version>
     </parent>
  
      <modelVersion>4.0.0</modelVersion>
      <groupId>com.mydomain.mypackage</groupId>
      <artifactId>flex-client</artifactId>
      <packaging>swf</packaging>
      <name>flex client</name>
      <version>1.0</version>
      
      <build>
        <plugins>
            <plugin>
            <groupId>info.rvin.mojo</groupId>
            <artifactId>flex-compiler-mojo</artifactId>
            <configuration>
                <debug>true</debug>
                <sourceFile>flexClient.mxml</sourceFile>
                <linkReport>true</linkReport>
            </configuration>
      </plugin>
        </plugins>
    </build>
      
      
        <dependencies>
               <dependency>
                  <groupId>com.mydomain.mypackage</groupId>
                  <artifactId>flex-core-library</artifactId>
                  <version>1.0</version>
                  <type>swc</type>
                  <scope>internal</scope>
               </dependency>
        </dependencies>
</project>

Здесь существенна одна дирректива:

XML:

<linkReport>true</linkReport>

данная строчка создает в maven репозитории xml файл с перечнем всех классов, которые включаются в данный swf. Этот перечень будет использоваться при копмиляции flex модуля.

pom для flexModuleRed

XML:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
     <parent>
  <groupId>com.mydomain.mypackage</groupId>
        <artifactId>my-flex-super-pom</artifactId>
        <version>1.0</version>
      </parent>
    <groupId>com.mydomain.mypackage</groupId>
  <artifactId>flexModuleRed</artifactId>
  <packaging>swf</packaging>
  <name>flex module red</name>
  <version>1.0</version>
    <build>
        <plugins>
            <plugin>
            <groupId>info.rvin.mojo</groupId>
            <artifactId>flex-compiler-mojo</artifactId>
            <configuration>
                <debug>true</debug>                
                <sourceFile>FlexModuleRed.mxml</sourceFile>
                <loadExterns>
          <MavenArtifact>
            <groupId>com.mydomain.mypackage</groupId>
            <artifactId>flex-client</artifactId>
            <version>1.0</version>
          </MavenArtifact>
                </loadExterns>
 
 
 
            </configuration>
            </plugin>
        </plugins>
    </build>
    <dependencies>
          <dependency>
              <groupId>com.mydomain.mypackage</groupId>
        <artifactId>flex-core-library</artifactId>
              <version>1.0</version>
              <type>swc</type>
              <scope>external</scope>
          </dependency>
     </dependencies>
</project>

следующий код:

Code:

<loadExterns>
  <MavenArtifact>
      <groupId>com.mydomain.mypackage</groupId>
      <artifactId>flex-client</artifactId>
      <version>1.0</version>
   </MavenArtifact>
</loadExterns>

исключает классы которые включены в flex-client.

здесь:

Code:

<dependency>
  <groupId>com.mydomain.mypackage</groupId>
  <artifactId>flex-core-library</artifactId>
  <version>1.0</version>
  <type>swc</type>
  <scope>external</scope>
</dependency>

важно включение библиотеки со scope external.

Еще одно замечание, имя flex модуля не должно использовать дефис, в моём проекте это вызвало необъяснимый глюк.

Сборока проекта.

Для сборки проекта необходимо в корневой библиотеке проекта запустить команду mvn install

Развертывание проекта.

Строго говоря, в обязанности maven эта задача не входит. После того как проект будет собран, нужно поместить flexModuleRed.swf в одну папку с flexClient.swf.

Исходники

Исходники можно взять отсюда

Постоянная ссылка 2008-08-13 19:49:50, от agahov Email , 565 слов, Рубрики: Flex, maven , 7 комментариев »

Flex-Mojos. Пример сборки модульного проекта.

Глоссарий

flex module - swf, которая может быть загружена или выгружена flex приложением. Она не может быть запущена независимо. Несколько приложений могут использовать один и тотже модуль.(как собирать flex модули я опишу в следующей статье)
maven module - логическая часть вашего проекта, например клиентские программы, библиотеки, серверные модули, модули конфигурации и т.п.

Введение

Рассмотрим сборку проекта состоящего их нескольких maven модулей. Для построения такого проекта нам потребуется, создать иерархическую структуру директорий, для каждого модуля своя директория, в каждой директории будет находиться исходный код модуля и роm.xml, который его собирает. В корневой директории будет находится родительский pom для всего проекта.

Структура проекта

картинка

Проект состоит из двух модулей:
корень проекта:
multyModulesProject/pom.xml - родительский роm.xml
flex библиотека:
multyModulesProject/flexCoreLibrary/pom.xml;
multyModulesProject/flexCoreLibrary/…;
flex приложение:
multyModulesProject/flexClient/pom.xml;
multyModulesProject/flexClient/…;

Наследование от flex-super-pom

Это достаточно тонкий момент. Возможны следующий решения:

  • Унаследовать родительский pom от flex-super-pom. При данном решении возникает вопрос, что делать с модулями которые не имеют отношения к flex.
  • Прописать все необходимые свойства непосредственно в дочерние модули. Приводит к излишнему дублированию кода.
  • Создать ещё один уровень иерархии. С модулями flex и java например. В модуле flex будет находиться my-flex-super-pom. Наследуется от родительского pom всего проекта и включает все необходимые параметры из flex-super-pom. Все maven модули собирающие flex, наследуются от my-flex-super-pom и помещаются в директорию flex. Недостаток данного метода в появлении ещё одного уровня иерархии.
  • И последний вариант, который я использую: Появляется модуль flex и my-flex-super-pom, как в предыдущем решении, но не создается иерархия. Все модули помещаются в корневую директорию. Модули собирающие flex артифакты наследуются от my-flex-super-pom. Сложность здесь в некоторой путанице с наследованием. Она не всегда совпадает с директориями, в которых находятся модули.

В итоге к нашему проекту добавился ешё один модуль flex.
multyModulesProject/flex/pom.xml; - по умолчанию полностью повторяет структуру flex-super-pom, но наследуется от родительского pom.

Родительский pom проекта

Родительский pom.xml нашего проекта может выглядеть следующим образом:

XML:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.mydomain.mypackage</groupId>
    <artifactId>myProjectArtifactId</artifactId>
    <name>myProjectName</name>
    <packaging>pom</packaging>
    <version>1.0</version>
    <url>http://maven.apache.org</url>
    <modules>
        <module>flex</module>
        <module>flexCoreLibrary</module>
        <module>flexClient</module>
    </modules>
            <repositories>
                  <repository>
                          <id>flex-mojos-repository</id>
                          <url>http://svn.sonatype.org/flexmojos/repository/</url>
                          <releases>
                                  <enabled>true</enabled>
                          </releases>
                  </repository>
      </repositories>
  
      <pluginRepositories>
 
          <pluginRepository>
            <id>flex-mojos-repository</id>
            <url>http://svn.sonatype.org/flexmojos/repository/</url>
            <releases>
              <enabled>true</enabled>
            </releases>
            <snapshots>
              <enabled>false</enabled>
            </snapshots>
          </pluginRepository>
        </pluginRepositories>
</project>

На что стоит обратить внимание:

XML:

<packaging>pom</packaging>

определяет тип собираемого артефакта, в данном случае pom.xml, оперирует другими pom.xml. Тип родительского модуля логический, обозначается “pom".

XML:

...
  <modules>
        <module>flex</module>
        <module>flexCoreLibrary</module>
        <module>flexClient</module>
        
  </modules>
...

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

XML:

...
<repositories>
...

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

Замечу что если у вас несколько проектов, то лучше его вынести в файл конфигурации maven.
под winXP, он находиться в: “C:\Documents and Settings\username\.m2\settings.xml", в других OS в той-же по смыслу директории.

my-flex-super-pom

Находиться в дирректории: multyModulesProject/flex
Отличается от flex-super-pom, добавлением кода определяющего родителя:

XML:

...
     <parent>
       <groupId>com.mydomain.mypackage</groupId>
       <artifactId>myProjectArtifactId</artifactId>
       <version>1.0</version>
    </parent>
...

и другим именем:

XML:

...
    <groupId>com.mydomain.mypackage</groupId>
    <artifactId>my-flex-super-pom</artifactId>
    <version>1.0</version>
    <name>parent pom for building modules with flex</name>
    <packaging>pom</packaging>
...

flex-core-library

Находится в директории: multyModulesProject/flexCoreLibrary:

XML:

<?xml version="1.0"?>
  <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 href="http://maven.apache.org/maven-v4_0_0.xsd">">http://maven.apache.org/maven-v4_0_0.xsd">
      <parent>
        <groupId>com.mydomain.mypackage</groupId>
              <artifactId>my-flex-super-pom</artifactId>
              <version>1.0</version>
      </parent>
  
      <modelVersion>4.0.0</modelVersion>
  
      <groupId>com.mydomain.mypackage</groupId>
      <artifactId>flex-core-library</artifactId>
      <packaging>swc</packaging>
      <name>flex-core-library</name>
      <version>1.0</version>
 
  </project>

Тег parent

устанавливает родительский pom. Теперь всё что определено в my-flex-super-pom будет доступно в данном проекте.

flex-client

Находится в директории: multyModulesProject/flexClient

XML:

<?xml version="1.0"?>
  <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 href="http://maven.apache.org/maven-v4_0_0.xsd">">http://maven.apache.org/maven-v4_0_0.xsd">
      <parent>
        <groupId>com.mydomain.mypackage</groupId>
              <artifactId>my-flex-super-pom</artifactId>
              <version>1.0</version>
      </parent>
  
      <modelVersion>4.0.0</modelVersion>
  
      <groupId>com.mydomain.mypackage</groupId>
      <artifactId>flex-client</artifactId>
      <packaging>swf</packaging>
      <name>flex client</name>
      <version>1.0</version>
 
            <dependencies>
               <dependency>
                 <groupId>com.mydomain.mypackage</groupId>
            <artifactId>flex-core-library</artifactId>
                  <version>1.0</version>
                  <type>swc</type>
                  <scope>internal</scope>
               </dependency>
            </dependencies>
  </project>

Тег parent

устанавливает родительский pom. Теперь всё что определено в my-flex-super-pom будет доступно в данном проекте.

Тег dependency

определяет зависимость flex-client от flex-core-library

Исходники

исходный код проект

Постоянная ссылка 2008-07-21 22:21:20, от agahov Email , 2027 слов, Рубрики: Flex, maven , 2 комментариев »

Flex-Mojos, Управление зависимостями.

Введение

В данной статье будет рассмотрена тема управление зависимостями при сборки flex приложения с помощью maven.
содержание предыдущих серий:
Пара общих слов о maven
Сборка простого flex приложения с помощью Flex Mojos;
Генерация html wrapper c помощью flex-mojos;

Что такое maven зависимости?

Допустим мы хотим используем в своём проекте, внешнюю swc. В Flex Builder необходимо её подключить. В maven это решается с помощью указания зависимости от maven артефакта. Этот артефакт представляет собой ссылку на swc в репозитории maven.
Пример:

Code:

<project>
...
<dependencies>
        <dependency>
            <groupId>com.mydomain.mypackage</groupId>
            <artifactId>mylibrary</artifactId>
            <version>1.0</version>
            <type>swc</type>
            <scope>external</scope>
        </dependency>
        ...
<dependencies>
...
</project>

Теги: groupId, artifactId, version, type - определяют путь к артефакту в maven repository,
Тег scope - определяет, как будет использоваться артефакт и может принимать следующие значения:
external - код swc, используется только для компиляции.
internal - код swc, полностью включается в итоговый проект.
merged - включается только та часть кода swc , которая используется в вашем проекте. Данное значение используется по умолчанию.
rsl - будет загружать swf, как rsl
caching - тоже что и rsl, но только для adobe библиотек swz, которые могут кэшироваться fp.
test - для компиляции тестов.

Я выделил жирным значения scope и тип артефакта с которым используется scope.

Как поместить артефакт в репозиторий?

Собственные библиотеки

Если вы собираете библиотеку с помощью maven, то она попадает в репозиторий после выполнения команды >mvn install.
После этого её можно использовать в любом вашем проекте указав зависимость.

Внешние библиотеки

В данный момент maven не слишком распространён в среде flex разработки. Поэтому общие библиотеки которые могут вам понадобиться(as3corelib, caingorm и т.д.) обычное не лежат в публичных репозиториях. Следовательно вам необходимо выложить их в свой локальный репозиторий. Для этого существует специальная команда maven:

Code:

mvn install:install-file -Dfile=  -DgroupId= \ -DartifactId= -Dversion= -Dpackaging=

Дополнения

Информациию о scopes и dependency можно также посмотреть на blog.flex-mojos;

Постоянная ссылка 2008-07-10 05:17:00, от agahov Email , 1388 слов, Рубрики: Flex, maven , Оставить комментарий »

Генерация html wrapper c помощью flex-mojos

Введение

Получить общее представление и посмотреть простой пример, c помощью flex mojos, можно здесь.

Также возможно ознакомиться с первоисточником Html Wrapper Mojo от Marvin Froeder’s, создателя flex mojos.

Знакомство с html-wrapper-mojo

Для того что бы сгенерить html wrapper для swf, достаточно в pom.xml
добавить mojo html-wrapper-mojo.

XML:

...
  <plugins>
            <plugin>
              <groupId>info.flex-mojos</groupId>
              <artifactId>html-wrapper-mojo</artifactId>
              <executions>
                <execution>
                  <goals>
                    <goal>wrapper</goal>
                  </goals>
                </execution>
              </executions>
               <configuration>
                  <templateURI>embed:client-side-detection</templateURI>
                  <parameters>
                      <swf>${build.finalName}</swf>
                      <width>200</width>
                      <height>200</height>
                  </parameters>
               </configuration>  
            </plugin>
        </plugins>
...

Конфигурация html-wrapper-mojo

тег templateURI

определяет один из варинтов шаблона от Adobe:
embed:client-side-detection
embed:client-side-detection-with-history (default)
embed:express-installation
embed:express-installation-with-history
embed:no-player-detection
embed:no-player-detection-with-history

или

URI на ваш собственный шаблон, например:"file:///etc/hosts". При этом файл с вашим шаблоном должен содержать index.template.html и быть в формате zip.

тег parameters

позволяет установить значения всем стандартным свойствам шаблона
title
version_major - требуемая версия fp, по умолчанию 9;
version_minor - требуемая минимальная версия fp, по умолчанию 0;
version_revision - требуемая ревизия, напрмер 115, по умолчанию 0;
swf - имя swf файла;
width
height
bgcolor
application - имя swf объекта внутри html.

Если вы используете свой собственный шаблон, то можете определить дополнительные параметры.

Дополнения

Для создания собственного шаблона можно использовать swfobject

Постоянная ссылка 2008-07-08 01:23:58, от agahov Email , 153 слов, Рубрики: Flex, maven , Оставить комментарий »

Сборка простого flex приложения с помощью Flex Mojos

Начальные условия

установленная java jdk 5 или выше.
переменная окружения JAVA_HOME
установленный maven.

Стандартная для maven структура проекта

project-name/pom.xml………………. конфигурационный файл сборки проекта.
project-name/src
project-name/src/main/
project-name/src/main/flex…………. код flex приложения
project-name/src/test
project-name/src/test/flex…………. тесты flex приложения
project-name/src/main/flex/Main.mxml

Структура pom.xml

pom собирающий flex приложение:

XML:

<?xml version="1.0"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0" >
 
 
    <parent>
         <groupId>info.rvin.mojo</groupId>
         <artifactId>flex-super-pom</artifactId>
         <version>1.0</version>
    </parent>
 
    <modelVersion>4.0.0</modelVersion>
 
    <groupId>com.mydomain.mypackage</groupId>
    <artifactId>myArtifactId</artifactId>
    <packaging>swf</packaging>
    <name>myArtifactName</name>
    <version>1.0</version>
 
    
    <repositories>
                <repository>
                        <id>flex-mojos-repository</id>
                        <url>http://svn.sonatype.org/flexmojos/repository/</url>
                        <releases>
                                <enabled>true</enabled>
                        </releases>
                </repository>
     </repositories>
 
    <pluginRepositories>
        <pluginRepository>
          <id>flex-mojos-repository</id>
          <url>http://svn.sonatype.org/flexmojos/repository/</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </pluginRepository>
      </pluginRepositories>
 
</project>

Запуск сборки проекта с помощью maven

Для сборки приложения необходимо набрать в командной строке,
project-name> mvn install

Рассмортим pom.xml по частям

XML:

<parent>
    <groupId>info.rvin.mojo</groupId>
    <artifactId>flex-super-pom</artifactId>
    <version>1.0</version>
</parent>

тег parent определяет родительский pom, для текущего pom.
В maven, текущий проект наследует свойства родительского.
В качестве родительского pom, для flex проекта здесь выступает flex-super-pom, который является частью flex-mojos. В нём определены многие полезные параметры, которые можно использовать по умолчанию. В своём проекте вы можете использовать собственный parent, взяв из flex-super-pom только необходимое.

Следующие теги определяют ваш артефакт в репозитории maven. В дальнейшем вы сможете использовать данный артифакт в других проектах.

XML:

<groupId>com.mydomain.mypackage</groupId>
    <artifactId>myArtifactId</artifactId>
    <packaging>swf</packaging>
    <name>myArtifactName</name>
    <version>1.0</version>

Стоит отметить

XML:

<packaging>swf</packaging>

- определяет тип артифакта, для библиотеки это swc.

XML:

<repositories>
                <repository>
                        <id>flex-mojos-repository</id>
                        <url>http://svn.sonatype.org/flexmojos/repository/</url>
                        <releases>
                                <enabled>true</enabled>
                        </releases>
                </repository>
     </repositories>

тег repositories определяет перечень репозиториев, в которых можно осуществлять поиск артифактов.

XML:

<pluginRepositories>
        <pluginRepository>
          <id>flex-mojos-repository</id>
          <url>http://svn.sonatype.org/flexmojos/repository/</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </pluginRepository>
      </pluginRepositories>

тег pluginRepositories определяет перечень репозиториев, в которых можно осуществлять поиск maven плагинов.

Полезные дополнения

Удаление артефактов осуществляется командой project-name>mvn clean
Генерация asdoc, осуществляется командой project-name>mvn asdoc:asdoc
Команды можно комбинировать, например project-name>mvn clean install

Что ещё может Flex mojos?

Компелить SWF, SWC, ASWF, ASWC.
Запускать тесты.
Поддерживать RSL.
Оптимизировать, шифровать swf.
Создавать html wrapper,
В итоге собирать сложные проекты, включающие библиотеки, стили, локализацию, flex модули.

Плюсы использования maven для flex сборки

По моему опыту плюсом является стандартизация структуры проекта. Для того что бы понять что откуда берёться, достаточно посмотреть pom.xml.

Постоянная ссылка 2008-07-04 10:59:45, от agahov Email , 1728 слов, Рубрики: Flex, maven , 4 комментариев »

Flex Mojos - A Maven Flex Plugin

Недавно вышел новый Flex Mojos - A Maven Flex Plugin. Если вы собираетесь внедрять maven, рекомендую к нему присмотреться.

Сборка приложения использующего BlazeDS, Spring, Hibernate. очень хорошо описана в наборе статей (Flex, Spring and BlazeDS: the full stack! part 1, part2 , part3, part4)

Постоянная ссылка 2008-07-03 10:18:53, от agahov Email , 21 слов, Рубрики: Flex, AS3, maven , 2 комментариев »

Flex + Maven часть1

Для сборки flex c помощью maven необходимо произвести следующие действия:
- установить MAVEN
- установить flex sdk
- создать файл проекта pom.xml
- настроить среду
- создать структуру проекта и Main.mxml
- запустить maven

Создание файла проекта pom.xml
плагин для сборки swf/swc http://www.israfil.net
пример pom.xml для flex

XML:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                      http://maven.apache.org/xsd/maven-4.0.0.xsd">
 
    <name>test-flex-swf</name>
    <groupid>test</groupid>
    <artifactid>test-flex-swf</artifactid>
    <version>1.0</version>
    <modelversion>4.0.0</modelversion>
    <description>test build flex with maven.
    see: </description>">http://riapriority.com/blogs/agahov.php</description>
 
    <packaging>swf</packaging>
 
  <properties>
                <flex .home>C:/FLEX_HOME/sdk/2.0.1</flex>
      </properties>
    <build>
        <plugins>
            <plugin>
                <groupid>net.israfil.mojo</groupid>
                <artifactid>maven-flex2-plugin</artifactid>
                <extensions>true</extensions>
                <configuration>
        <flexhome>${flex.home}</flexhome>
                    <mainmxmlfile>Main.mxml</mainmxmlfile>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

Настройка среды
- flex.home в pom.xml должна ссылаться на flex sdk, которую вы хоти использовать для сборки

не забудте в файле $flex.home/frameworks/flex-config.xml отредактировать следующую строку:
winFonts.ser - для windows
macFonts.ser - для MAC

XML:

<flex -config>
        <compiler>
                <fonts>
                        <local -fonts-snapshot>---Fonts.ser</local>
                </fonts>
        </compiler>
</flex>

Cтруктура проекта
project-name/pom.xml
project-name/src
project-name/src/main/
project-name/src/main/flex
project-name/src/test
project-name/src/main/flex/Main.mxml

Main.mxml может быть таким:

XML:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
  <![CDATA[
    import mx.controls.Alert;
    
    private function start():void
    {
      Alert.show("hi maven!");
    }
  ]]>
</mx:Script>
 
  <mx:Button click="start()"/>
</mx:Application>

Сборка проекта с помощю maven
для сборки проекта зайдите в папку [project-name] и выполните команду: mvn pakage

исходники

Постоянная ссылка 2007-11-27 11:00:10, от agahov Email , 325 слов, Рубрики: Flex, AS3, maven , 4 комментариев »

Maven

MAVEN.
философия maven

Цели Maven
- Сделать процесс сборки лёгким
- Обеспечить унифицированную систему сборки
- Предоставить качественную информацию о проекте
- Дать руководство о лучших практиках разработки
- Обеспечить прозрачный переход к новым возможностям.

статья на русском языке
cтруктура стандартного проекта.

Постоянная ссылка 2007-11-23 13:21:30, от agahov Email , 4 слов, Рубрики: maven , Оставить комментарий »