-
Notifications
You must be signed in to change notification settings - Fork 261
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #42 from justinjmoses/version2
Maven
- Loading branch information
Showing
6 changed files
with
298 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
Maven usage | ||
===== | ||
|
||
Installation | ||
------ | ||
|
||
__Step 1: Install Maven 3.0.3+__ | ||
|
||
[Download from here](http://maven.apache.org/download.html) | ||
|
||
__Step 2: Ensure maven binaries are on your PATH (ie. you can run `mvn` from anywhere)__ | ||
|
||
Follow the installation instructions from [here](http://maven.apache.org/download.html#Installation). | ||
|
||
__Step 3: CD to the robotlegs root (where the POM.xml lives)__ | ||
|
||
__Step 4: Install the third party dependencies into your local repository__ | ||
|
||
* In OS X | ||
|
||
bash -x maven-runonce.sh | ||
|
||
* In Windows | ||
|
||
maven-runonce.bat | ||
|
||
>Note: we do this because unlike Ant, Maven requires all dependencies live within a repository somewhere. Because none of these dependencies are hosted externally on a remote repository, we need to install them locally into the repository. Going forward, the hope is that many of these dependencies will live in Maven Central, negating the need to install them locally. JM. | ||
|
||
To build | ||
----- | ||
In order to build Robotlegs from source, run the following command in the Robotlegs root folder. | ||
|
||
mvn clean install -s settings.xml | ||
|
||
|
||
Alternative to supplying settings | ||
----- | ||
If you would rather not supply `-s settings.xml` for every build, you can add the repository information from settings.xml into your local repository. Alternatively, you can simply copy the robotlegs settings.xml to `~/.m2/settings.xml` where ~ is your user directory (`\Users\username` in Win7+) | ||
|
||
> __Why do we need the settings file?__ While Flexmojos lives within Maven Central, its dependencies (such as the Flex compiler) and flash project dependencies (such as framework SDKs) do NOT. They live within the flexgroup branch off (sonatype)[http://repository.sonatype.org/content/groups/flexgroup/]. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
mvn -s settings.xml install:install-file -Dfile=lib/SwiftSuspenders-v2.0.0b1.swc -DartifactId=swiftsuspenders -DgroupId=org.swiftsuspenders -Dversion=2.0.0-b1 -Dpackaging=swc | ||
mvn -s settings.xml install:install-file -Dfile=lib/as3commons-logging-2.7.swc -DartifactId=as3commons-logging -DgroupId=org.as3commons -Dversion=2.7 -Dpackaging=swc | ||
mvn -s settings.xml install:install-file -Dfile=lib/flexunit-4.1.0-8-flex_4.1.0.16076.swc -DgroupId=com.adobe.flexunit -DartifactId=flexunit -Dversion=4.1.0-8 -Dpackaging=swc -Dclassifier=flex | ||
mvn -s settings.xml install:install-file -Dfile=lib/hamcrest-as3-flex-1.1.3.swc -DgroupId=org.hamcrest -DartifactId=hamcrest-as3 -Dversion=1.1.3 -Dpackaging=swc -Dclassifier=flex | ||
mvn -s settings.xml install:install-file -Dfile=lib/mockolate-0.12.1-flex.swc -Dversion=0.12.1 -Dclassifier=flex -Dpackaging=swc -DgroupId=mockolate -DartifactId=mockolate |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
#!/bin/bash | ||
mvn -s settings.xml install:install-file -Dfile=lib/SwiftSuspenders-v2.0.0b1.swc -DartifactId=swiftsuspenders -DgroupId=org.swiftsuspenders -Dversion=2.0.0-b1 -Dpackaging=swc | ||
mvn -s settings.xml install:install-file -Dfile=lib/as3commons-logging-2.7.swc -DartifactId=as3commons-logging -DgroupId=org.as3commons -Dversion=2.7 -Dpackaging=swc | ||
mvn -s settings.xml install:install-file -Dfile=lib/flexunit-4.1.0-8-flex_4.1.0.16076.swc -DgroupId=com.adobe.flexunit -DartifactId=flexunit -Dversion=4.1.0-8 -Dpackaging=swc -Dclassifier=flex | ||
mvn -s settings.xml install:install-file -Dfile=lib/hamcrest-as3-flex-1.1.3.swc -DgroupId=org.hamcrest -DartifactId=hamcrest-as3 -Dversion=1.1.3 -Dpackaging=swc -Dclassifier=flex | ||
mvn -s settings.xml install:install-file -Dfile=lib/mockolate-0.12.1-flex.swc -Dversion=0.12.1 -Dclassifier=flex -Dpackaging=swc -DgroupId=mockolate -DartifactId=mockolate |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,214 @@ | ||
<?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/maven-v4_0_0.xsd"> | ||
|
||
<modelVersion>4.0.0</modelVersion> | ||
<groupId>org.robotlegs</groupId> | ||
<artifactId>robotlegs-framework</artifactId> | ||
|
||
<version>2.0.0-b1-SNAPSHOT</version> | ||
|
||
<packaging>swc</packaging> | ||
|
||
<name>Robotlegs Framework</name> | ||
<description> | ||
Robotlegs is a pure AS3 micro-architecture (framework) with a light footprint and limited scope. Simply put, Robotlegs is there to help you wire your objects together. It provides the glue that your application needs to easily function in a decoupled way. Through the use of automated metadata based dependency injection Robotlegs removes boilerplate code in an application. By promoting loose coupling and avoiding the use of Singletons and statics in the framework Robotlegs can help you write code that is highly testable. | ||
</description> | ||
<url>http://www.robotlegs.org</url> | ||
<licenses> | ||
<license> | ||
<name>Robotlegs Custom License</name> | ||
<url>http://github.com/robotlegs/robotlegs-framework/blob/master/LICENSE</url> | ||
<distribution>repo</distribution> | ||
</license> | ||
</licenses> | ||
|
||
<developers> | ||
<developer> | ||
<id>darscan</id> | ||
<name>Shaun Smith</name> | ||
<email></email> | ||
<roles> | ||
<role>Founder</role> | ||
</roles> | ||
</developer> | ||
<developer> | ||
<id>joelhooks</id> | ||
<name>Joel Hooks</name> | ||
<email>joelhooks@gmail.com</email> | ||
<url>http://joelhooks.com/</url> | ||
</developer> | ||
<developer> | ||
<id>stray</id> | ||
<name>Stray</name> | ||
<url>http://www.xxcoder.net/</url> | ||
</developer> | ||
</developers> | ||
<contributors> | ||
<contributor> | ||
<name>Craig Wickesser</name> | ||
<email>codecraig@gmail.com</email> | ||
<url>http://digitalchickenscratch.com/</url> | ||
<roles> | ||
<role>Maven contributor</role> | ||
</roles> | ||
</contributor> | ||
<contributor> | ||
<name>Justin J. Moses</name> | ||
<url>http://about.me/justinj</url> | ||
<roles> | ||
<role>Maven contributor</role> | ||
</roles> | ||
</contributor> | ||
</contributors> | ||
|
||
<scm> | ||
<url>http://github.com/robotlegs/robotlegs-framework/tree/version2</url> | ||
<connection>git://github.com/robotlegs/robotlegs-framework.git</connection> | ||
</scm> | ||
|
||
<properties> | ||
<maven.version>3.0.3</maven.version> | ||
|
||
<flexmojos.version>4.0-RC2</flexmojos.version> | ||
|
||
<!-- The Flex SDK to compile against --> | ||
<flex.sdk.version>4.5.1.21328</flex.sdk.version> | ||
<swiftsuspenders.version>2.0.0-b1</swiftsuspenders.version> | ||
<as3commons.version>2.7</as3commons.version> | ||
<robotlegs1.version>1.5.2</robotlegs1.version> | ||
|
||
<!-- Unit testing frameworks and dependencies --> | ||
<flexunit.version>4.1.0-8</flexunit.version> | ||
<hamcrest.version>1.1.3</hamcrest.version> | ||
<mockolate.version>0.12.1</mockolate.version> | ||
</properties> | ||
|
||
<distributionManagement> | ||
<repository> | ||
<id>sonatype-staging</id> | ||
<url>http://oss.sonatype.org/service/local/staging/deploy/maven2</url> | ||
</repository> | ||
<snapshotRepository> | ||
<id>sonatype-nexus-snapshots</id> | ||
<name>Sonatype Nexus Snapshots</name> | ||
<url>http://oss.sonatype.org/content/repositories/snapshots</url> | ||
</snapshotRepository> | ||
</distributionManagement> | ||
|
||
<build> | ||
<sourceDirectory>src</sourceDirectory> | ||
<testSourceDirectory>test</testSourceDirectory> | ||
<resources> | ||
<resource><directory>src</directory></resource> | ||
</resources> | ||
|
||
<plugins> | ||
<plugin> | ||
<groupId>org.sonatype.flexmojos</groupId> | ||
<artifactId>flexmojos-maven-plugin</artifactId> | ||
<version>${flexmojos.version}</version> | ||
<extensions>true</extensions> | ||
<configuration> | ||
<keepAs3Metadatas> | ||
<keepAs3Metadata>Inject</keepAs3Metadata> | ||
<keepAs3Metadata>PostConstruct</keepAs3Metadata> | ||
</keepAs3Metadatas> | ||
<includeFiles> | ||
<include>metadata.xml</include> | ||
<include>manifest.xml</include> | ||
<include>design.xml</include> | ||
</includeFiles> | ||
<dumpConfigAttach>true</dumpConfigAttach> | ||
<verboseStacktraces>true</verboseStacktraces> | ||
<compilerWarnings> | ||
<warn-no-constructor>false</warn-no-constructor> | ||
</compilerWarnings> | ||
<includeTestFiles> | ||
<includeTestFile>suites/EntireTestSuite.as</includeTestFile> | ||
</includeTestFiles> | ||
<includeSources> | ||
<includeSource>${project.build.sourceDirectory}</includeSource> | ||
</includeSources> | ||
</configuration> | ||
<dependencies> | ||
<dependency> | ||
<groupId>com.adobe.flex</groupId> | ||
<artifactId>compiler</artifactId> | ||
<version>${flex.sdk.version}</version> | ||
<type>pom</type> | ||
</dependency> | ||
</dependencies> | ||
</plugin> | ||
</plugins> | ||
</build> | ||
|
||
<dependencies> | ||
<!-- Note: while this includes the entire flex framework for compilation, the default for SWCs is external linkage, so nothing from the Flex framework will be added to the final output. --> | ||
<dependency> | ||
<groupId>com.adobe.flex.framework</groupId> | ||
<artifactId>flex-framework</artifactId> | ||
<version>${flex.sdk.version}</version> | ||
<type>pom</type> | ||
</dependency> | ||
|
||
<!--- Swift Suspenders. The used definitions will be merged in. --> | ||
<dependency> | ||
<groupId>org.swiftsuspenders</groupId> | ||
<artifactId>swiftsuspenders</artifactId> | ||
<version>${swiftsuspenders.version}</version> | ||
<type>swc</type> | ||
<scope>merged</scope> | ||
</dependency> | ||
|
||
<!-- AS3 Commons Logging. The used definitions will be merged in. --> | ||
<dependency> | ||
<groupId>org.as3commons</groupId> | ||
<artifactId>as3commons-logging</artifactId> | ||
<type>swc</type> | ||
<version>${as3commons.version}</version> | ||
<scope>merged</scope> | ||
</dependency> | ||
|
||
<!-- Robotlegs 1 dependency. The used definitions will be merged in. --> | ||
<dependency> | ||
<groupId>org.robotlegs</groupId> | ||
<artifactId>robotlegs-framework</artifactId> | ||
<version>${robotlegs1.version}</version> | ||
<type>swc</type> | ||
<scope>merged</scope> | ||
</dependency> | ||
|
||
<!-- ======================== --> | ||
<!-- TEST Dependencies. (Only compiled in the unit test runner) --> | ||
<dependency> | ||
<groupId>com.adobe.flexunit</groupId> | ||
<artifactId>flexunit</artifactId> | ||
<version>${flexunit.version}</version> | ||
<type>swc</type> | ||
<classifier>flex</classifier> | ||
<scope>test</scope> | ||
</dependency> | ||
|
||
<dependency> | ||
<groupId>org.hamcrest</groupId> | ||
<artifactId>hamcrest-as3</artifactId> | ||
<version>${hamcrest.version}</version> | ||
<type>swc</type> | ||
<classifier>flex</classifier> | ||
<scope>test</scope> | ||
</dependency> | ||
|
||
<dependency> | ||
<groupId>mockolate</groupId> | ||
<artifactId>mockolate</artifactId> | ||
<version>${mockolate.version}</version> | ||
<type>swc</type> | ||
<classifier>flex</classifier> | ||
<scope>test</scope> | ||
</dependency> | ||
<!-- ======================== --> | ||
|
||
</dependencies> | ||
</project> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" | ||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 | ||
http://maven.apache.org/xsd/settings-1.0.0.xsd"> | ||
|
||
<profiles> | ||
<profile> | ||
<id>flexgroup-on-sonatype</id> | ||
<repositories> | ||
<repository> | ||
<id>Sonatype Flex Group</id> | ||
<url>http://repository.sonatype.org/content/groups/flexgroup/</url> | ||
</repository> | ||
</repositories> | ||
<pluginRepositories> | ||
<pluginRepository> | ||
<id>Sonatype Flex Group</id> | ||
<url>http://repository.sonatype.org/content/groups/flexgroup/</url> | ||
</pluginRepository> | ||
</pluginRepositories> | ||
</profile> | ||
</profiles> | ||
|
||
<!-- NOTE: this will deactivate any "activeByDefault" profiles in the project POM --> | ||
<activeProfiles> | ||
<activeProfile>flexgroup-on-sonatype</activeProfile> | ||
</activeProfiles> | ||
</settings> |