What is Maven?
Maven is java tool for project management and build automation based on concept of POM(Project Object Model).
- Maven projects are configured using POM, stored in pom.xml.
- Maven project needs some coordinates to allow it to be identified by other Maven projects. These are called the group ID, artifact ID, and version
What is groupId?
groupId is a unique identifier of the group that created project, typically it is fully qualified name of the organization.
What is artifactId?
artifactId is unique base name of the primary artifact being generated by this project. A typical artifact produced by Maven would have the form <artifactId>-<version>.<extension> (for example, myapp-1.0.jar).
What is Archetype?
Archetype is a maven set of template projects.
Creating a Maven Flex Project:
Executing the command mvn archetype:generate will generate a project and pom file from the predefined template project.
After Executing the command on command line following screen is shown to select the one of the template project, version, groupId, artifactId of the created project.
A project will be created with the following structure:
my-app
|-- pom.xml
`-- src
|-- main
| `|-- flex
| | `-- Main.mxml
| |-- resources
`-- test
`-- flex
`-- com
`-- mycompany
`-- TestApp.asPOM:
<project>
<!-- model version is always 4.0.0 for Maven 2.x POMs -->
<modelVersion>4.0.0</modelVersion>
<!-- project coordinates, i.e. a group of values which uniquely identify this project -->
<groupId>com.mycompany</groupId>
<artifactId>my-app</artifactId>
<version>1.0</version>
<packaging>swf</packaging>
<!-- library dependencies -->
<dependencies>
<dependency>
<!-- coordinates of the required library -->
<groupId>com.adobe.flex.framework</groupId>
<artifactId>flex-framework</artifactId>
<version>3.2.0.3958</version>
<type>pom</type>
</dependency>
<dependency>
<!-- this dependency is only used for running and compiling tests -->
<groupId>com.adobe.flexunit</groupId>
<artifactId>flexunit</artifactId>
<version>0.85</version>
<type>swc</type>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<sourceDirectory>src/main/flex</sourceDirectory>
<testSourceDirectory>src/test/flex</testSourceDirectory>
<plugins>
<plugin>
<groupId>org.sonatype.flexmojos</groupId>
<artifactId>flexmojos-maven-plugin</artifactId>
<version>3.8</version>
<extensions>true</extensions>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>m2e</id>
<activation>
<property>
<name>m2e.version</name>
</property>
</activation>
<build>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.4</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.maven.ide.eclipse</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>0.9.9-SNAPSHOT</version>
<configuration>
<mappingId>customizable</mappingId>
<configurators>
<configurator id="org.maven.ide.eclipse.configuration.flex.configurator" />
</configurators>
<mojoExecutions>
<mojoExecution>org.apache.maven.plugins:maven-resources-plugin::</mojoExecution>
</mojoExecutions>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>Ref:
Visit :http://subhash85.wordpress.com/
No comments:
Post a Comment