Fixed issue #164 (deployment to Maven Central).

Deployed the first snapshot.

Updated documentation getting ready for beta-1.

Removed jetty references.

Added docs for the share-amp-archetype
This commit is contained in:
mindthegab
2014-08-22 16:07:17 -04:00
parent e354786112
commit d367cf4a00
28 changed files with 372 additions and 162 deletions

View File

@@ -3,26 +3,37 @@
------
Gabriele Columbro
------
Nov 2012
Aug 2014
------
Introduction
The Maven Alfresco SDK\x99 - formerly {{{https://artifacts.alfresco.com/nexus/content/repositories/alfresco-docs/maven-alfresco-lifecycle/latest/index.html} Maven Alfresco Lifecycle 3.9.1}} -
The (Maven) Alfresco SDK\x99 - formerly {{{https://artifacts.alfresco.com/nexus/content/repositories/alfresco-docs/maven-alfresco-lifecycle/latest/index.html} Maven Alfresco Lifecycle 3.9.1}} -
provides a fully fledged Maven support for {{{http://www.alfresco.com}Alfresco ECM}} WAR and {{{https://wiki.alfresco.com/wiki/AMP_Files}AMP}} project development.
Being fully integrated with Maven it allows to both leverage the vast number of Maven plugins for your Alfresco project as well as integrated your
project easily in Open Source and Enterprise development processes.
The Maven Alfresco SDK\x99 is fully documented in the single components websites (links above) as well as updated on {{{https://wiki.alfresco.com/wiki/Maven_Alfresco_SDK}the Alfresco Wiki}}.
* Rationale
The Maven Alfresco SDK\x99 is fully documented in the single components websites (see menu above).
For official (Enterprise) support of this SDK please refer to the features and tutorials documented in {{{http://docs.alfresco.com/community/concepts/alfresco-sdk-intro.html}the Official Alfresco Docs}}.
How to Use the SDK
The Alfresco Maven SDK introduces a new way of conceiving software development, deployment and release of Alfresco related projects and artifacts.
In contrast to the manual (and error prone) deployment approach based on an installer / Alfresco WAR distribution(s) and the <infamous> <<<${extensionRoot}>>>,
the Maven SDK provides a unified access to fine grained Artifacts (jar,war,pom files),] that can be easily integrated
in your project by the means of Alfresco-specific Maven components and configurations. The main goal of this SDK is to
enable rapid development and prototyping of Alfresco projects, while enabling agile development practices (i.e. TDD, FDD)
and fostering process reuse due to standardization
The easiest way to use the SDK is to create a sample project using one of the available <<archetypes>> (Repo AMP, Share AMP, All in One).
You can also use the Alfresco SDK Parent POM directly in your Maven project to inherit Alfresco behaviors and configurations.
SDK Versions
As of version 2.0, releases for the Alfresco SDK are available in Maven Central.
Alfresco SDK 1.x versions rely on the {{{https://artifacts.alfresco.com/nexus/content/groups/public/}Alfresco Artifacts Repository}}.
For documentation on the Maven Alfresco SDK\x99 1.x please refer to {{{https://artifacts.alfresco.com/nexus/content/repositories/alfresco-docs/alfresco-lifecycle-aggregator/1.x/latest/index.html} Maven Alfresco SDK 1.x}}
SDK Alfresco Compatibility
Please refer to the {{{http://docs.alfresco.com/community/concepts/alfresco-sdk-compatibility.html}official Alfresco docs}} for details of SDK / Alfresco compatibility.
Maven Alfresco SDK\x99 components
@@ -30,7 +41,7 @@ Maven Alfresco SDK\x99 components
* {{{./poms/alfresco-sdk-parent/index.html}The SDK parent POM}} providing full Alfresco project lifecycle feature, to be added as a <<<<parent>>>> in your projects
* Archetypes like the {{{./archetypes/alfresco-amp-archetype/index.html}AMP}} or {{{./archetypes/alfresco-allinone-archetype/index.html}All-in-One}} providing sample project to kickstart your Alfresco development and boost it with best practices
* Archetypes like the {{{./archetypes/alfresco-amp-archetype/index.html}Repo AMP}}, {{{./archetypes/share-amp-archetype/index.html}Share AMP}} or {{{./archetypes/alfresco-allinone-archetype/index.html}All-in-One}} providing sample project to kickstart your Alfresco development and boost it with best practices
* The {{{./plugins/alfresco-maven-plugin/index.html} Alfresco Maven Plugin}} to manage AMP packaging and dependencies
@@ -45,12 +56,12 @@ Pre-requisites
No manual Alfresco download, application server or database is required.
See details in the {{{./prerequisites.html} SDK pre-requisites page}}.
* Alfresco Compatibility
* Rapid development with Spring Loaded
Maven Alfresco SDK\x99 ${project.version} is compatible (for now) with Alfresco Community (4.2b+) and Enterprise (4.1.2+).
The majority of the features might still work when using lower Alfresco versions, but certain artifacts might not be
available in the {{{https://artifacts.alfresco.com}Alfresco Artifacts Repository}}. You can probably fix this with some
Maven configuration, but use at your own risk.
The SDK (as of 2.0) support true rapid development and IDE integration. To allow hot reload of Java classes the SDK leverages
{{{https://github.com/spring-projects/spring-loaded}spring-loaded}}, a library which allows seamless reloading of classfiles.
Check the {{{./prerequisites.html} SDK pre-requisites page}} to enable spring-loaded rapid development.
Project History
@@ -67,3 +78,5 @@ Project History
* In October 2012 Alfresco finalises the {{{https://issues.alfresco.com/jira/browse/ALF-14353} Maven modularisation and dependency categorisation}}, delivering {{{https://artifacts.alfresco.com}artifacts and poms}}
* The new Alfresco Maven SDK 1.0 is released and presented on Tuesday 7 November at {{{http://devcon.alfresco.com/}Alfresco DevCon}} in Berlin.
* The new Alfresco Maven SDK 2.0 is released and presented on late 2014 November and released on Maven Central

View File

@@ -3,30 +3,40 @@
------
Gabriele Columbro
------
Nov 2012
August 2014
------
Maven Alfresco SDK\x99 Pre-Requisites
The only real prerequisite of the Maven Alfresco SDK\x99 Apache Maven 3.0.3+ installed (and properly configured) on your machine;
The only real prerequisite of the Maven Alfresco SDK\x99 Apache Maven 3.0.4 installed (and properly configured) on your machine;
neither <<an IDE>> nor <<web container or database>> are required.
Additional tips:
* It is strongly advised to use the Apache Maven official binary distributions downloaded from the {{{http://maven.apache.org}official mirrors}}; avoid OS-specific distributions as much as possible.
* add <<<MAVEN_OPTS="-Xms256m -Xmx1G -XX:PermSize=300m">>> to your environment if your plan to launch tests / run embedded in Jetty
* add <<<MAVEN_OPTS="-Xms256m -Xmx1G -XX:PermSize=300m">>> to your environment if your plan to launch tests / run embedded in Tomcat
* Alfresco compability: Communtiy 4.2+ | Enterprise 4.1.2+
* Refer to this {{{http://docs.alfresco.com/community/concepts/alfresco-sdk-compatibility.html}matrix}} for Alfresco/SDK version compatibility
* Java 1.7 is <<required>> to run Alfresco 4.2.b+
* Java 1.7 is <<required>> to run Alfresco 4.2.b+ and the SDK 1.1.x +
* <<No manual downloading>> of Alfresco distribution is required.
Alfresco platform is retrieved automatically from {{{https://artifacts.alfresco.com} the Alfresco Artifacts Repository}}
based on the <<<alfresco.groupId>>> and <<<alfresco.version>>> POM properties
Enable hot class reload with spring-loaded
In order to enable hot class reload you should use the spring-loaded agent and run all your maven builds with it configured in the JVM.
To achieve this you can:
* Download the spring-loaded library from {{{http://search.maven.org/remotecontent?filepath=org/springframework/springloaded/1.2.0.RELEASE/springloaded-1.2.0.RELEASE.jar}here}}.
* Export the following MAVEN_OPTS: <<<MAVEN_OPTS="$MAVEN_OPTS -javaagent:/path/to/your/springloaded/jar/springloaded-1.2.0.RELEASE.jar -noverify">>>.
H2 Embedded Support Pre-Requisites

View File

@@ -6,6 +6,15 @@
Nov 2012
------
Rationale
The Alfresco Maven SDK introduces a new way of conceiving software development, deployment and release of Alfresco related projects and artifacts.
In contrast to the manual (and error prone) deployment approach based on an installer / Alfresco WAR distribution(s) and the <infamous> <<<${extensionRoot}>>>,
the Maven SDK provides a unified access to fine grained Artifacts (jar,war,pom files),] that can be easily integrated
in your project by the means of Alfresco-specific Maven components and configurations. The main goal of this SDK is to
enable rapid development and prototyping of Alfresco projects, while enabling agile development practices (i.e. TDD, FDD)
and fostering process reuse due to standardization
Why would you use the Maven Alfresco SDK\x99?
As a standard de facto, Maven allows you projects to be inherently more reusable and enables <process reuse> of your development practices,

View File

@@ -55,6 +55,7 @@
<menu name="SDK components">
<item name="Maven Alfresco SDK" href="./index.html" />
<item name="Alfresco AMP Archetype" href="./archetypes/alfresco-amp-archetype/index.html" />
<item name="Share AMP Archetype" href="./archetypes/alfresco-amp-archetype/index.html" />
<item name="Alfresco All-in-One Archetype" href="./archetypes/alfresco-allinone-archetype/index.html" />
<item name="Alfresco SDK Parent POM" href="./poms/alfresco-sdk-parent/index.html" />
<item name="Alfresco Platform Distribution POM" href="https://artifacts.alfresco.com/nexus/content/repositories/alfresco-docs/alfresco-platform-distribution/latest/index.html" />
@@ -62,6 +63,7 @@
</menu>
<menu name="Community Docs">
<item name="Official Alfresco SDK docs" href="http://docs.alfresco.com/community/concepts/alfresco-sdk-intro.html" />
<item name="Alfresco Maven Wiki Docs" href="http://wiki.alfresco.com/wiki/Maven_Alfresco_SDK" />
<item name="Alfresco with Maven for Dummies" href="https://wiki.alfresco.com/wiki/Maven_For_Dummies" />
<item name="Developer Access (Google Code)" href="http://code.google.com/p/maven-alfresco-archetypes/" />