This document needs updating...
Archetypes using the SDK can be generated with:
mvn archetype:generate -DarchetypeCatalog=https://artifacts.alfresco.com/nexus/content/groups/public-snapshots/archetype-catalog.xml
Disclaimer
This codebase is currently work in progress; the effort have been split in three directions: a) The definition of 2 POM files that can handle versions and common build behaviors/features b) The writing of an alfresco-maven-plugin to enable amp-to-war overlay provided by Alfresco Repository built-in features (ModuleManagementTool) and replace the maven-amp-plugin (big rewriting of the maven-war-plugin) c) The definition of (initially 2) archetypes that show some simple project's configuration using the parent POMs
Most of the build features have been successfully ported to a new structure, whose main advantage is to keep pom.xml files extremely simple and readable (since a lot of logic have been moved to the parent). Inherited behaviours are configurable simply defining specific properties in the project's or module's pom.xml (see documentation below).
Here follows a list of build features that have not been ported yet:
Apart from SCM and release, all the mentioned features are probably best suited for a more enterprise archetype, using the Alfresco Web Integration POM as parent and adding more build features around Maven, Tomcat and JBoss.
Regarding the POM files, I'd like to see them deployed on maven.alfresco.com, hopefully generated (by the Alfresco build?) and tested for each Alfresco release.
--- oOo ---
Prerequisites
--- oOo ---
Build and Run
mvn clean install (with empty repository, Maven will download 365Mb)
--- oOo ---
Archetypes
--- oOo ---
POM files
When mvn clean is invoked, all files produced by Maven runs must be removed; this is the list of filesets inherited from alfresco-developer-parent:
When your project (or sub-module) is a
You can enable Jetty to run your application(s); by default Jetty will run all contexts using jetty/jetty.xml as Jetty Server configuration, allowing to add the jndi resource needed to start Alfresco Repository webapp; if you want to run multiple webapps - for example share and alfresco - follow the example listed below: