mirror of
https://github.com/Alfresco/alfresco-sdk.git
synced 2025-10-01 14:41:57 +00:00
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:
@@ -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
|
||||
|
@@ -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
|
||||
|
||||
|
@@ -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,
|
||||
|
@@ -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/" />
|
||||
|
Reference in New Issue
Block a user