mirror of
https://github.com/Alfresco/alfresco-sdk.git
synced 2025-10-08 14:51:55 +00:00
-- added new and improved documentation
-- moved to maven.alfresco.com -- tested -Pinitialize profile for the repo to clean alf_data and DB -- moved jetty run to -Prun profile for the repo -- preparing juicy maintenance release git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@250 04253f4f-3451-0410-a141-5562f1e59037
This commit is contained in:
@@ -35,25 +35,30 @@
|
||||
<description>Test AMP project</description>
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>ss-public-mirror</id>
|
||||
<url>http://repository.sourcesense.com/nexus/content/groups/public</url>
|
||||
<id>alfresco-public-snapshots</id>
|
||||
<url>http://maven.alfresco.com/nexus/content/groups/public-snapshots</url>
|
||||
<snapshots>
|
||||
<enabled>true</enabled>
|
||||
<updatePolicy>daily</updatePolicy>
|
||||
</snapshots>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>ss-public-snapshots-mirror</id>
|
||||
<url>http://repository.sourcesense.com/nexus/content/groups/public-snapshots</url>
|
||||
</repository>
|
||||
<id>alfresco-public</id>
|
||||
<url>http://maven.alfresco.com/nexus/content/groups/public</url>
|
||||
s </repository>
|
||||
</repositories>
|
||||
<pluginRepositories>
|
||||
<pluginRepository>
|
||||
<id>ss-public-mirror</id>
|
||||
<url>http://repository.sourcesense.com/nexus/content/groups/public</url>
|
||||
<id>alfresco-public</id>
|
||||
<url>http://maven.alfresco.com/nexus/content/groups/public</url>
|
||||
</pluginRepository>
|
||||
<pluginRepository>
|
||||
<id>ss-public-snapshots-mirror</id>
|
||||
<id>alfresco-public-snapshots</id>
|
||||
<url>http://repository.sourcesense.com/nexus/content/groups/public-snapshots</url>
|
||||
<snapshots>
|
||||
<enabled>true</enabled>
|
||||
</snapshots>
|
||||
<enabled>true</enabled>
|
||||
<updatePolicy>daily</updatePolicy>
|
||||
</snapshots>
|
||||
</pluginRepository>
|
||||
</pluginRepositories>
|
||||
<properties>
|
||||
@@ -162,6 +167,7 @@
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>buildnumber-maven-plugin</artifactId>
|
||||
<version>1.0-beta-2</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<phase>validate</phase>
|
||||
|
@@ -20,10 +20,10 @@
|
||||
<beans>
|
||||
|
||||
<!-- A simple class that is initialized by Spring -->
|
||||
<bean id="${groupId}.${artifactId}.exampleBean" class="com.sourcesense.demoamp.Demo" init-method="init" />
|
||||
<bean id="${groupId}.${artifactId}.exampleBean" class="org.alfresco.demoamp.Demo" init-method="init" />
|
||||
|
||||
<!-- A simple module component that will be executed once -->
|
||||
<bean id="${groupId}.${artifactId}.exampleComponent" class="com.sourcesense.demoamp.DemoComponent" parent="module.baseComponent" >
|
||||
<bean id="${groupId}.${artifactId}.exampleComponent" class="org.alfresco.demoamp.DemoComponent" parent="module.baseComponent" >
|
||||
<property name="moduleId" value="${pom.groupId}.${pom.artifactId}" /> <!-- See module.properties -->
|
||||
<property name="name" value="exampleComponent" />
|
||||
<property name="description" value="A demonstration component" />
|
||||
|
@@ -38,4 +38,4 @@
|
||||
#
|
||||
#-----------------------------------------------------------------------
|
||||
|
||||
log4j.logger.com.sourcesense.demoamp.DemoComponent=${module.log.level}
|
||||
log4j.logger.org.alfresco.demoamp.DemoComponent=${module.log.level}
|
@@ -22,7 +22,7 @@
|
||||
* the FLOSS exception, and it is also available here:
|
||||
* http://www.alfresco.com/legal/licensing"
|
||||
*/
|
||||
package com.sourcesense.demoamp;
|
||||
package org.alfresco.demoamp;
|
||||
|
||||
/**
|
||||
* This class does nothing except dump some output to <i>system.out</i>.
|
@@ -14,7 +14,7 @@
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
*/
|
||||
package com.sourcesense.demoamp;
|
||||
package org.alfresco.demoamp;
|
||||
|
||||
import java.util.logging.Logger;
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 3.5 KiB |
@@ -1,29 +1,45 @@
|
||||
-----
|
||||
Maven Alfresco Extension Archetype
|
||||
-----
|
||||
Sourcesense
|
||||
Alfresco
|
||||
-----
|
||||
|
||||
|
||||
|
||||
Welcome to the Maven Alfresco AMP Archetype home
|
||||
|
||||
You've reached the Sourcesense ({{ ${site_pom_url} }}) Maven Alfresco AMP archetype home page (version: ${site_pom_version})
|
||||
You've reached the ({{ ${site_pom_url} }}) Maven Alfresco AMP archetype home page (version: ${site_pom_version})
|
||||
|
||||
|
||||
|
||||
Description
|
||||
|
||||
${site_pom_description}
|
||||
|
||||
|
||||
You can use this Archetype to build and add AMPs to Alfresco WAR packages in conjunction with the maven-alfresco-extension-archetype.
|
||||
Using Maven you will benefit of a more structured and scalable way of using AMPs without the Module Management Tool (MMT).
|
||||
|
||||
|
||||
|
||||
Quick Start (maven2)
|
||||
|
||||
For a quick start you can a maven alfresco AMP project created by just running <<(maven 2.0.6+ required)>>:
|
||||
For a quick start you can a maven alfresco AMP project created by just running <<(maven 2.1+ required)>>:
|
||||
|
||||
--------------------------------------------
|
||||
mvn archetype:generate -DarchetypeCatalog=http://repository.sourcesense.com/nexus/content/repositories/alfresco.public.releases/archetype-catalog.xml
|
||||
mvn archetype:generate -DarchetypeCatalog=http://maven.alfresco.com/nexus/content/repositories/releases/archetype-catalog.xml
|
||||
--------------------------------------------
|
||||
|
||||
and then choose the option 'maven-alfresco-amp-archetype'
|
||||
and then choose the option 'maven-alfresco-amp-archetype'
|
||||
|
||||
|
||||
Usage
|
||||
|
||||
You can package and install your AMP module in the local Maven repo by just running
|
||||
|
||||
--------------------------------------------
|
||||
mvn install
|
||||
--------------------------------------------
|
||||
|
||||
You can then use the AMP by depending on it using the Maven Alfresco Extension Archetype, without any external tool (e.g. MMT).
|
||||
See {{http://maven.alfresco.com/nexus/content/repositories/alfresco-docs/maven-alfresco-lifecycle/maven-alfresco-archetypes/maven-alfresco-extension-archetype/profiles.html}}
|
@@ -8,11 +8,11 @@
|
||||
<logo name="Maven" href="http://maven.apache.org" img="http://maven.apache.org/images/logos/maven-feather.png"/>
|
||||
<logo name="Alfresco - Open source ECM" img="http://alfresco.com/assets/images/icons/powered_by_alfresco.gif" href="http://www.sourcesense.com" />
|
||||
</poweredBy>
|
||||
<publishDate position="navigation-bottom" format="MM-dd-yy"/>
|
||||
<publishDate position="navigation-bottom" format="MM-dd-yy" />
|
||||
<bannerLeft>
|
||||
<name>Maven alfresco AMP archetype - v. ${project.version}</name>
|
||||
<name>Maven alfresco Extension archetype - v. ${project.version}</name>
|
||||
<href>${site_site_url}</href>
|
||||
<src>images/logo_noclaim.png</src>
|
||||
<src>images/Alfresco-logo-transparent.gif</src>
|
||||
</bannerLeft>
|
||||
<body>
|
||||
<links>
|
||||
|
@@ -4,6 +4,17 @@
|
||||
<author email="g.columbro@sourcesense.com">Gabriele Columbro</author>
|
||||
</properties>
|
||||
<body>
|
||||
<release version="3.0.0-beta-1" date="2009-12-03" description="Consolidated release to maven.alfresco.com">
|
||||
<action dev="g.columbro" type="add">
|
||||
Added -Pinitialize profile to clean alf_data and drop/create DB within the build
|
||||
</action>
|
||||
<action dev="g.columbro" type="add">
|
||||
Updated all docs to Maven Alfresco repository
|
||||
</action>
|
||||
<action dev="g.columbro" type="enhancement">
|
||||
Incapsulated jetty run in the -Prun profile, which runs by default jetty during the integration-test phase
|
||||
</action>
|
||||
</release>
|
||||
<release version="1.9.0" date="2009-11-07" description="Public release alfresco 3.2r based">
|
||||
<action dev="g.columbro" type="add">
|
||||
Updated to Alfresco 3.2r artifacts
|
||||
|
@@ -1,22 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
-->
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version
|
||||
2.0 (the "License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0 Unless required by
|
||||
applicable law or agreed to in writing, software distributed under the
|
||||
License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
|
||||
CONDITIONS OF ANY KIND, either express or implied. See the License for
|
||||
the specific language governing permissions and limitations under the
|
||||
License.
|
||||
-->
|
||||
<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>${groupId}</groupId>
|
||||
@@ -27,40 +24,40 @@
|
||||
<url></url>
|
||||
<description>Alfresco extension</description>
|
||||
<!--
|
||||
|
|
||||
| Prerequisite:
|
||||
| - Mysql local instance running and db alf_jetty created with permissions for alfresco/alfresco user.
|
||||
|
|
||||
| How it works:
|
||||
| By default the project is overlayed to the alfresco war which depends upon and deployed as a WAR (local development and testing purposes)
|
||||
| Available properties:
|
||||
|
|
||||
| -Denv - toggles src/main/properties/<env>/application.properties files (default: local)
|
||||
| -DrestoreVersion=<restoreVersion> - toggles profile "restore" in order to include tools/export/<restoreVersion>/restore/*.acp files in
|
||||
| alfresco/extension/restore (default: no restore)
|
||||
| -Dcustomization.name=<customizationName> - name of the jar artifact containing classes and resources for this extension
|
||||
| -Dwebapp.name=<extensionName> - name of the WAR artifact to be built (default: ${artifactId}-{version}.jar )
|
||||
| -Denterprise - Includes LDAP configuration as defined in application.properties
|
||||
-->
|
||||
| | Prerequisite: | - Mysql local instance running and db alf_jetty
|
||||
created with permissions for alfresco/alfresco user. | | How it works:
|
||||
| By default the project is overlayed to the alfresco war which
|
||||
depends upon and deployed as a WAR (local development and testing
|
||||
purposes) | Available properties: | | -Denv - toggles
|
||||
src/main/properties/<env>/application.properties files (default:
|
||||
local) | -DrestoreVersion=<restoreVersion> - toggles profile "restore"
|
||||
in order to include tools/export/<restoreVersion>/restore/*.acp files
|
||||
in | alfresco/extension/restore (default: no restore) |
|
||||
-Dcustomization.name=<customizationName> - name of the jar artifact
|
||||
containing classes and resources for this extension |
|
||||
-Dwebapp.name=<extensionName> - name of the WAR artifact to be built
|
||||
(default: ${artifactId}-{version}.jar ) | -Denterprise - Includes LDAP
|
||||
configuration as defined in application.properties
|
||||
-->
|
||||
<!-- Default properties -->
|
||||
<properties>
|
||||
<!-- src/main/properties/<env>/application.properties is loaded -->
|
||||
<env>local</env>
|
||||
<webapp.name>alfresco</webapp.name>
|
||||
<!--
|
||||
|
|
||||
| By default the src/main/properties/local/application.properties uses the property "alfresco.data.location" to specify where
|
||||
| alf_data gets created.
|
||||
| For local jetty:run deployment default creation dir is under project root folder (as location is specified relatively to run
|
||||
| dir). Please add alf_data_jetty in svn/cvs ignores in order not to commit that. You can also specified a different (out of the
|
||||
| sproject) folder
|
||||
| by editing the following properties.
|
||||
| DB is also configurable here. Of course keep in sync these two values otherwise you'll get integrity errors.
|
||||
|
|
||||
| Empty log dir creates file alfresco.log in appserver default dir. You can also specify a meaningful log directory for the server
|
||||
| (add a trailing slash, e.g. '/var/log/alfresco/' )
|
||||
|
|
||||
| Jetty embedded run logs by default in target/alfresco.log
|
||||
<!--
|
||||
| | By default the src/main/properties/local/application.properties
|
||||
uses the property "alfresco.data.location" to specify where |
|
||||
alf_data gets created. | For local jetty:run deployment default
|
||||
creation dir is under project root folder (as location is specified
|
||||
relatively to run | dir). Please add alf_data_jetty in svn/cvs
|
||||
ignores in order not to commit that. You can also specified a
|
||||
different (out of the | sproject) folder | by editing the following
|
||||
properties. | DB is also configurable here. Of course keep in sync
|
||||
these two values otherwise you'll get integrity errors. | | Empty log
|
||||
dir creates file alfresco.log in appserver default dir. You can also
|
||||
specify a meaningful log directory for the server | (add a trailing
|
||||
slash, e.g. '/var/log/alfresco/' ) | | Jetty embedded run logs by
|
||||
default in target/alfresco.log
|
||||
-->
|
||||
<alfresco.data.location>./alf_data_jetty</alfresco.data.location>
|
||||
<alfresco.db.name>alf_jetty</alfresco.db.name>
|
||||
@@ -70,17 +67,23 @@
|
||||
<!-- Used for 2.1.0 -->
|
||||
<desktop.action.package>org.alfresco.filesys.repo.desk</desktop.action.package>
|
||||
<!-- Used for 2.9.0+ -->
|
||||
<!--desktop.action.package>org.alfresco.filesys.repo.desk</desktop.action.package-->
|
||||
<log.dir></log.dir>
|
||||
<!-- Uncomment this property together with the <scm> section downwards
|
||||
<svn.url>
|
||||
https://mycompany.com/repos/my-test-project
|
||||
</svn.url>
|
||||
<!--
|
||||
desktop.action.package>org.alfresco.filesys.repo.desk</desktop.action.package
|
||||
-->
|
||||
<!-- Uncomment this property together with the maven-release-plugin <plugin><configuration><tagBase/></configuration></plugin> section downwards
|
||||
<svn.tags.url>${svn.url}/tags</svn.tags.url>
|
||||
<log.dir></log.dir>
|
||||
<!--
|
||||
Uncomment this property together with the <scm> section downwards
|
||||
<svn.url> https://mycompany.com/repos/my-test-project </svn.url>
|
||||
-->
|
||||
<!--
|
||||
Uncomment this property together with the maven-release-plugin
|
||||
<plugin><configuration><tagBase/></configuration></plugin> section
|
||||
downwards <svn.tags.url>${svn.url}/tags</svn.tags.url>
|
||||
-->
|
||||
<!--
|
||||
These redundancies are due to filtering issues of Maven. See here
|
||||
http://maven.apache.org/plugins/maven-site-plugin/usage.html
|
||||
-->
|
||||
<!-- These redundancies are due to filtering issues of Maven. See here http://maven.apache.org/plugins/maven-site-plugin/usage.html -->
|
||||
<site_pom_description>${pom.description}</site_pom_description>
|
||||
<site_pom_url>${pom.organization.url}</site_pom_url>
|
||||
<site_pom_groupId>${pom.groupId}</site_pom_groupId>
|
||||
@@ -89,45 +92,48 @@
|
||||
<site_tags_url>${svn.tags.url}</site_tags_url>
|
||||
<site_site_url>${site.url}</site_site_url>
|
||||
</properties>
|
||||
<!--
|
||||
| Alfresco Community dependencies are generally available in ss-public repo.
|
||||
| FIXME: Alfresco enterprise dependencies are only available on SS repo ATM. Alfresco *needs* to deliver their artifacts on (at least) partner repos
|
||||
|-->
|
||||
<!--
|
||||
| Alfresco Community dependencies are generally available in ss-public
|
||||
repo. | FIXME: Alfresco enterprise dependencies are only available on
|
||||
SS repo ATM. Alfresco *needs* to deliver their artifacts on (at least)
|
||||
partner repos |
|
||||
-->
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>ss-public-mirror</id>
|
||||
<url>http://repository.sourcesense.com/nexus/content/groups/public</url>
|
||||
<id>alfresco-public</id>
|
||||
<url>http://maven.alfresco.com/nexus/content/groups/public</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>ss-public-snapshots-mirror</id>
|
||||
<url>http://repository.sourcesense.com/nexus/content/groups/public-snapshots</url>
|
||||
<id>alfresco-public-snapshots</id>
|
||||
<url>http://maven.alfresco.com/nexus/content/groups/public-snapshots</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
<pluginRepositories>
|
||||
<pluginRepository>
|
||||
<id>ss-public-mirror</id>
|
||||
<url>http://repository.sourcesense.com/nexus/content/groups/public</url>
|
||||
<id>alfresco-public</id>
|
||||
<url>http://maven.alfresco.com/nexus/content/groups/public</url>
|
||||
</pluginRepository>
|
||||
<pluginRepository>
|
||||
<id>ss-public-snapshots-mirror</id>
|
||||
<url>http://repository.sourcesense.com/nexus/content/groups/public-snapshots</url>
|
||||
<id>alfresco-public-snapshots</id>
|
||||
<url>http://maven.alfresco.com/nexus/content/groups/public-snapshots</url>
|
||||
<snapshots>
|
||||
<enabled>true</enabled>
|
||||
</snapshots>
|
||||
</pluginRepository>
|
||||
</pluginRepositories>
|
||||
<!-- Uncomment SCM definitions in order to have mvn release:perform to actually tag the code
|
||||
<scm>
|
||||
<developerConnection>scm:svn:${svn.url}</developerConnection>
|
||||
<url>${svn.url}</url>
|
||||
</scm>
|
||||
-->
|
||||
|
||||
<!--
|
||||
Uncomment SCM definitions in order to have mvn release:perform to
|
||||
actually tag the code <scm>
|
||||
<developerConnection>scm:svn:${svn.url}</developerConnection>
|
||||
<url>${svn.url}</url> </scm>
|
||||
-->
|
||||
|
||||
<!-- Alfresco dependencies -->
|
||||
<dependencies>
|
||||
<!-- Alfresco Dependencies
|
||||
| NB: These files are not publicly available. Please vote for Alfresco to release them :)
|
||||
| Jboss alfresco build (e.g. no log4j.properties and fix for myFaces)
|
||||
<!--
|
||||
Alfresco Dependencies | NB: These files are not publicly available.
|
||||
Please vote for Alfresco to release them :) | Jboss alfresco build
|
||||
(e.g. no log4j.properties and fix for myFaces)
|
||||
-->
|
||||
<dependency>
|
||||
<groupId>org.alfresco</groupId>
|
||||
@@ -136,7 +142,10 @@
|
||||
<type>war</type>
|
||||
<classifier>community</classifier>
|
||||
</dependency>
|
||||
<!-- All provided libs (as contained in the war dependency) but useful for development (e.g. IDE configuration) -->
|
||||
<!--
|
||||
All provided libs (as contained in the war dependency) but useful for
|
||||
development (e.g. IDE configuration)
|
||||
-->
|
||||
<dependency>
|
||||
<groupId>org.alfresco</groupId>
|
||||
<artifactId>alfresco-web-client</artifactId>
|
||||
@@ -166,19 +175,17 @@
|
||||
<classifier>community</classifier>
|
||||
</dependency>
|
||||
|
||||
<!-- Sample of AMP dependency that will be properly uncompressed in the Alfresco WAR (no more need for AMP):
|
||||
this can be either an AMP built with maven-amp-plugin and deployed on an accessible
|
||||
maven repo or a generally available AMP previously deployed to a repo using mvn deploy:deploy-file
|
||||
|
||||
<dependency>
|
||||
<scope>runtime</scope>
|
||||
<type>amp</type>
|
||||
<artifactId>recordsmanagement</artifactId>
|
||||
<!--
|
||||
Sample of AMP dependency that will be properly uncompressed in the
|
||||
Alfresco WAR (no more need for AMP): this can be either an AMP built
|
||||
with maven-amp-plugin and deployed on an accessible maven repo or a
|
||||
generally available AMP previously deployed to a repo using mvn
|
||||
deploy:deploy-file <dependency> <scope>runtime</scope>
|
||||
<type>amp</type> <artifactId>recordsmanagement</artifactId>
|
||||
<version>${alfresco.version}</version>
|
||||
<groupId>org.alfresco</groupId>
|
||||
</dependency>
|
||||
-->
|
||||
|
||||
<groupId>org.alfresco</groupId> </dependency>
|
||||
-->
|
||||
|
||||
<!-- Comment if you're not using mysql -->
|
||||
<dependency>
|
||||
<groupId>mysql</groupId>
|
||||
@@ -196,12 +203,21 @@
|
||||
<build>
|
||||
<!-- Customize here your webapp name - default: alfresco.war -->
|
||||
<finalName>${webapp.name}</finalName>
|
||||
<!-- Used to access Sourcesense repository for writing. Public version not available, see README.txt -->
|
||||
<!-- In certain cases we do build time filtering with the single sourcing application.properties -->
|
||||
<!--
|
||||
Used to access Sourcesense repository for writing. Public version not
|
||||
available, see README.txt
|
||||
-->
|
||||
<!--
|
||||
In certain cases we do build time filtering with the single sourcing
|
||||
application.properties
|
||||
-->
|
||||
<filters>
|
||||
<filter>src/main/properties/${env}/application.properties</filter>
|
||||
</filters>
|
||||
<!-- Default profile to build as an Alfresco extension - resources are copied into classpath-->
|
||||
<!--
|
||||
Default profile to build as an Alfresco extension - resources are
|
||||
copied into classpath
|
||||
-->
|
||||
<resources>
|
||||
<!-- By default also no content is restored -->
|
||||
<resource>
|
||||
@@ -211,9 +227,10 @@
|
||||
<exclude>**/ldap-*.xml</exclude>
|
||||
</excludes>
|
||||
</resource>
|
||||
<!--
|
||||
| Include application properties file in classpath: this allows Spring contexts to have customization properties available at
|
||||
| classpath:alfresco/extension/application.properties
|
||||
<!--
|
||||
| Include application properties file in classpath: this allows
|
||||
Spring contexts to have customization properties available at |
|
||||
classpath:alfresco/extension/application.properties
|
||||
-->
|
||||
<resource>
|
||||
<directory>src/main/properties/${env}</directory>
|
||||
@@ -227,7 +244,10 @@
|
||||
<directory>src/main/resources</directory>
|
||||
<includes>
|
||||
<include>log4j.properties</include>
|
||||
<!-- In this case we do build time filtering instead of runtime Spring property loading, as this is based on a CoC from Alfresco -->
|
||||
<!--
|
||||
In this case we do build time filtering instead of runtime Spring
|
||||
property loading, as this is based on a CoC from Alfresco
|
||||
-->
|
||||
<include>alfresco/extension/file-servers-custom.xml</include>
|
||||
</includes>
|
||||
<filtering>true</filtering>
|
||||
@@ -251,14 +271,16 @@
|
||||
<encoding>UTF-8</encoding>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<!-- useful for eclipse project configuration. Run "mvn eclipse:eclipse" and hit "F5" on the project -->
|
||||
<!--
|
||||
useful for eclipse project configuration. Run "mvn eclipse:eclipse"
|
||||
and hit "F5" on the project
|
||||
-->
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-eclipse-plugin</artifactId>
|
||||
<!--
|
||||
<configuration>
|
||||
<downloadSources>true</downloadSources>
|
||||
</configuration>
|
||||
<!--
|
||||
<configuration> <downloadSources>true</downloadSources>
|
||||
</configuration>
|
||||
-->
|
||||
</plugin>
|
||||
<!-- Add documentation locales here -->
|
||||
@@ -286,8 +308,11 @@
|
||||
</execution>
|
||||
</executions>
|
||||
<dependencies>
|
||||
<!-- This is required to be re-defined explicitly at plugin level as otherwise the 'amp' extension
|
||||
unArchiver won't be available to the maven-dependency-plugin -->
|
||||
<!--
|
||||
This is required to be re-defined explicitly at plugin level as
|
||||
otherwise the 'amp' extension unArchiver won't be available to the
|
||||
maven-dependency-plugin
|
||||
-->
|
||||
<dependency>
|
||||
<groupId>org.alfresco.maven.plugin</groupId>
|
||||
<artifactId>maven-amp-plugin</artifactId>
|
||||
@@ -307,32 +332,6 @@
|
||||
</webResources>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.mortbay.jetty</groupId>
|
||||
<artifactId>maven-jetty-plugin</artifactId>
|
||||
<version>6.1.21</version>
|
||||
<executions>
|
||||
<!-- Runs jetty when 'integration-test' phase is called -->
|
||||
<execution>
|
||||
<id>it</id>
|
||||
<phase>integration-test</phase>
|
||||
<goals>
|
||||
<goal>run-exploded</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<contextPath>/${webapp.name}</contextPath>
|
||||
<webApp>${pom.build.directory}/${webapp.name}</webApp>
|
||||
<scanIntervalSeconds>10</scanIntervalSeconds>
|
||||
<connectors>
|
||||
<connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
|
||||
<port>8080</port>
|
||||
<maxIdleTime>60000</maxIdleTime>
|
||||
</connector>
|
||||
</connectors>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.cargo</groupId>
|
||||
<artifactId>cargo-maven2-plugin</artifactId>
|
||||
@@ -345,11 +344,15 @@
|
||||
<!-- useEditMode>true</useEditMode> -->
|
||||
<dryRun>true</dryRun>
|
||||
<preparationGoals>clean package</preparationGoals>
|
||||
<goals>install deploy cargo:undeploy cargo:deploy site:deploy</goals>
|
||||
<goals>install deploy cargo:undeploy cargo:deploy
|
||||
site:deploy</goals>
|
||||
<!-- <tagBase>${svn.tags.url}</tagBase> -->
|
||||
</configuration>
|
||||
</plugin>
|
||||
<!-- Adds support for books PDF and RTF generation for single sourced documentation -->
|
||||
<!--
|
||||
Adds support for books PDF and RTF generation for single sourced
|
||||
documentation
|
||||
-->
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.doxia</groupId>
|
||||
<artifactId>doxia-maven-plugin</artifactId>
|
||||
@@ -363,10 +366,10 @@
|
||||
</execution>
|
||||
</executions>
|
||||
<configuration>
|
||||
<!--
|
||||
| Target books dir: within the site so it can be linked and deployed
|
||||
| TODO: Use ${pom.target.dir} or so similar property instead of
|
||||
| hard wiring 'target'
|
||||
<!--
|
||||
| Target books dir: within the site so it can be linked and
|
||||
deployed | TODO: Use ${pom.target.dir} or so similar property
|
||||
instead of | hard wiring 'target'
|
||||
-->
|
||||
<generatedDocs>target/site/books</generatedDocs>
|
||||
<books>
|
||||
@@ -413,11 +416,10 @@
|
||||
<plugin>
|
||||
<artifactId>maven-clover-plugin</artifactId>
|
||||
</plugin>
|
||||
<!-- Enable this plugin only after setting SCM connection, otherwise mvn site will fail
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>changelog-maven-plugin</artifactId>
|
||||
</plugin>
|
||||
<!--
|
||||
Enable this plugin only after setting SCM connection, otherwise mvn
|
||||
site will fail <plugin> <groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>changelog-maven-plugin</artifactId> </plugin>
|
||||
-->
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
@@ -425,30 +427,22 @@
|
||||
</plugin>
|
||||
</plugins>
|
||||
</reporting>
|
||||
<!--
|
||||
| Configured to deploy on SS public repository ATM.
|
||||
| You'd need a valid uid/pwd in our repo
|
||||
|
|
||||
<!--
|
||||
| Configured to deploy on SS public repository ATM. | You'd need a
|
||||
valid uid/pwd in our repo |
|
||||
-->
|
||||
<distributionManagement>
|
||||
<!--
|
||||
|
|
||||
| Enable this repo in case of publicly redistributable artifacts (Sourcesense public repositories via ssh + public key )
|
||||
|
|
||||
<repository>
|
||||
<id>yourcompany</id>
|
||||
<url>scp://yourcompany/var/maven2</url>
|
||||
</repository>
|
||||
<distributionManagement>
|
||||
<site>
|
||||
<id>yourcompany-site</id>
|
||||
<url>scp://yourcompany/var/maven2-sites</url>
|
||||
</site>
|
||||
<!--
|
||||
| | Enable this repo in case of publicly redistributable artifacts
|
||||
(Sourcesense public repositories via ssh + public key ) |
|
||||
<repository> <id>yourcompany</id>
|
||||
<url>scp://yourcompany/var/maven2</url> </repository>
|
||||
<distributionManagement> <site> <id>yourcompany-site</id>
|
||||
<url>scp://yourcompany/var/maven2-sites</url> </site>
|
||||
-->
|
||||
<!--
|
||||
|
|
||||
| Enable this repo in case of non publicly redistributable artifacts (Sourcesense private repositories via webdav)
|
||||
|
|
||||
<!--
|
||||
| | Enable this repo in case of non publicly redistributable
|
||||
artifacts (Sourcesense private repositories via webdav) |
|
||||
-->
|
||||
</distributionManagement>
|
||||
|
||||
@@ -456,12 +450,13 @@
|
||||
| Build Profiles
|
||||
-->
|
||||
<profiles>
|
||||
<!--
|
||||
| Profile to automatically restore export files committed under
|
||||
| "tools/export/<restoreVersion>/export_*.[acp,xml]" and the restore-context.xml.
|
||||
| Gets automatically activated specifiying a value for the property
|
||||
| restoreVersion which maps to the name of the folder.
|
||||
| NB: In order this to work you *MUST* export your full repo with "export" package name
|
||||
<!--
|
||||
| Profile to automatically restore export files committed under |
|
||||
"tools/export/<restoreVersion>/export_*.[acp,xml]" and the
|
||||
restore-context.xml. | Gets automatically activated specifiying a
|
||||
value for the property | restoreVersion which maps to the name of the
|
||||
folder. | NB: In order this to work you *MUST* export your full repo
|
||||
with "export" package name
|
||||
-->
|
||||
<profile>
|
||||
<id>restore</id>
|
||||
@@ -489,9 +484,9 @@
|
||||
</resources>
|
||||
</build>
|
||||
</profile>
|
||||
<!--
|
||||
| Profile to automatically include ldap configuration files
|
||||
| (not included by default build)
|
||||
<!--
|
||||
| Profile to automatically include ldap configuration files | (not
|
||||
included by default build)
|
||||
-->
|
||||
<profile>
|
||||
<id>ldap</id>
|
||||
@@ -512,27 +507,30 @@
|
||||
</resources>
|
||||
</build>
|
||||
</profile>
|
||||
<!-- Profile for deploying (only locally , due to http://jira.codehaus.org/browse/CARGO-416) on jboss.
|
||||
|
|
||||
| FIXME: Add <dependencies> override in order to have jboss specific alfresco-*-jboss.war (e.g no log4j.properties and log4j jar)
|
||||
| being substituted as a depenendency, and avoid log4j classCasts
|
||||
|
|
||||
<!--
|
||||
Profile for deploying (only locally , due to
|
||||
http://jira.codehaus.org/browse/CARGO-416) on jboss. | | FIXME: Add
|
||||
<dependencies> override in order to have jboss specific
|
||||
alfresco-*-jboss.war (e.g no log4j.properties and log4j jar) | being
|
||||
substituted as a depenendency, and avoid log4j classCasts |
|
||||
-->
|
||||
<profile>
|
||||
<id>jboss</id>
|
||||
<!--
|
||||
| By default the src/main/properties/local/application.properties uses the property "alfresco.data.location" to specify where
|
||||
| alf_data gets created and "alfresco.db.name" for the database name.
|
||||
| For local jboss deployment default creation dir (alf_data) is under appserver $JBOSS_HOME/bin directory (as location is specified relatively to
|
||||
| run dir)
|
||||
|
|
||||
| Empty log dir creates file alfresco.log in appserver default dir. You can also specify a meaningful log directory for the server
|
||||
| (add a trailing slash, e.g. '/var/log/alfresco/' )
|
||||
|
|
||||
| NB: Remember to grant appropriate permissions on database you specify here by running the script found in tools/mysql/[jetty/tomcat/jboss]
|
||||
| sql scripts (after editing them), or run those you find in target/classes/tools/[db_remove,db_setup].sql which are already filtered according to
|
||||
| ' alfresco.db.name ' property.
|
||||
|
|
||||
<!--
|
||||
| By default the src/main/properties/local/application.properties
|
||||
uses the property "alfresco.data.location" to specify where |
|
||||
alf_data gets created and "alfresco.db.name" for the database name.
|
||||
| For local jboss deployment default creation dir (alf_data) is
|
||||
under appserver $JBOSS_HOME/bin directory (as location is specified
|
||||
relatively to | run dir) | | Empty log dir creates file alfresco.log
|
||||
in appserver default dir. You can also specify a meaningful log
|
||||
directory for the server | (add a trailing slash, e.g.
|
||||
'/var/log/alfresco/' ) | | NB: Remember to grant appropriate
|
||||
permissions on database you specify here by running the script found
|
||||
in tools/mysql/[jetty/tomcat/jboss] | sql scripts (after editing
|
||||
them), or run those you find in
|
||||
target/classes/tools/[db_remove,db_setup].sql which are already
|
||||
filtered according to | ' alfresco.db.name ' property. |
|
||||
-->
|
||||
<properties>
|
||||
<alfresco.data.location>./alf_data</alfresco.data.location>
|
||||
@@ -605,18 +603,21 @@
|
||||
-->
|
||||
<profile>
|
||||
<id>tomcat</id>
|
||||
<!--
|
||||
| By default the src/main/properties/local/application.properties uses the property "alfresco.data.location" to specify where
|
||||
| alf_data gets created.
|
||||
| For tomcat deployment default creation dir (alf_data) is under appserver $CATALINA_HOME/bin directory (as location is specified relatively to
|
||||
| run dir) and db is configurable likewhise.
|
||||
| Empty log dir creates file alfresco.log in appserver default dir. You can also specify a meaningful log directory for the server
|
||||
| (add a trailing slash, e.g. '/var/log/alfresco/' )
|
||||
|
|
||||
| NB: Remember to grant appropriate permissions on database you specify here by running the script found in tools/mysql/[jetty/tomcat/jboss]
|
||||
| mysql scripts (properly edited) or those you find in target/tools/[db_remove,db_setup].sql which are already filtered according to
|
||||
| ' alfresco.db.name ' property
|
||||
|
|
||||
<!--
|
||||
| By default the src/main/properties/local/application.properties
|
||||
uses the property "alfresco.data.location" to specify where |
|
||||
alf_data gets created. | For tomcat deployment default creation dir
|
||||
(alf_data) is under appserver $CATALINA_HOME/bin directory (as
|
||||
location is specified relatively to | run dir) and db is
|
||||
configurable likewhise. | Empty log dir creates file alfresco.log in
|
||||
appserver default dir. You can also specify a meaningful log
|
||||
directory for the server | (add a trailing slash, e.g.
|
||||
'/var/log/alfresco/' ) | | NB: Remember to grant appropriate
|
||||
permissions on database you specify here by running the script found
|
||||
in tools/mysql/[jetty/tomcat/jboss] | mysql scripts (properly
|
||||
edited) or those you find in target/tools/[db_remove,db_setup].sql
|
||||
which are already filtered according to | ' alfresco.db.name '
|
||||
property |
|
||||
-->
|
||||
<properties>
|
||||
<alfresco.data.location>./alf_data</alfresco.data.location>
|
||||
@@ -660,5 +661,121 @@
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
<!-- -Pinitialize : boostraps the db (only to be used the 1st run) -->
|
||||
<profile>
|
||||
<id>initialize</id>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>sql-maven-plugin</artifactId>
|
||||
<version>1.1</version>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>mysql</groupId>
|
||||
<artifactId>mysql-connector-java</artifactId>
|
||||
<version>5.0.3</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<!-- common configuration shared by all executions -->
|
||||
<configuration>
|
||||
<driver>org.gjt.mm.mysql.Driver</driver>
|
||||
<url>jdbc:mysql://localhost/</url>
|
||||
<username>${alfresco.db.username}</username>
|
||||
<password>${alfresco.db.password}</password>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<phase>generate-resources</phase>
|
||||
<id>drop-db</id>
|
||||
<goals>
|
||||
<goal>execute</goal>
|
||||
</goals>
|
||||
<!-- Bootstraps the DB -->
|
||||
<configuration>
|
||||
<onError>continue</onError>
|
||||
<sqlCommand>drop database ${alfresco.db.name}</sqlCommand>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<phase>generate-resources</phase>
|
||||
<id>create-db</id>
|
||||
<goals>
|
||||
<goal>execute</goal>
|
||||
</goals>
|
||||
<!-- Bootstraps the DB -->
|
||||
<configuration>
|
||||
<sqlCommand>create database ${alfresco.db.name}</sqlCommand>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<!-- Cleans the alf_data folder and logs-->
|
||||
<plugin>
|
||||
<artifactId>maven-clean-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>clean-execution</id>
|
||||
<phase>generate-resources</phase>
|
||||
<goals>
|
||||
<goal>clean</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<filesets>
|
||||
<fileset>
|
||||
<directory>${alfresco.data.location}</directory>
|
||||
<includes>
|
||||
<include>**/*</include>
|
||||
</includes>
|
||||
</fileset>
|
||||
<fileset>
|
||||
<directory>.</directory>
|
||||
<includes>
|
||||
<include>**/*.log</include>
|
||||
<include>*.log</include>
|
||||
</includes>
|
||||
</fileset>
|
||||
</filesets>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
<profile>
|
||||
<id>run</id>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.mortbay.jetty</groupId>
|
||||
<artifactId>maven-jetty-plugin</artifactId>
|
||||
<version>6.1.21</version>
|
||||
<executions>
|
||||
<!-- Runs jetty when 'integration-test' phase is called -->
|
||||
<execution>
|
||||
<id>it</id>
|
||||
<phase>integration-test</phase>
|
||||
<goals>
|
||||
<goal>run-exploded</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<contextPath>/${webapp.name}</contextPath>
|
||||
<webApp>${pom.build.directory}/${webapp.name}</webApp>
|
||||
<scanIntervalSeconds>10</scanIntervalSeconds>
|
||||
<connectors>
|
||||
<connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
|
||||
<port>8080</port>
|
||||
<maxIdleTime>60000</maxIdleTime>
|
||||
</connector>
|
||||
</connectors>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
</profile>
|
||||
</profiles>
|
||||
</project>
|
||||
|
@@ -8,7 +8,7 @@
|
||||
|
||||
Welcome to the Maven Alfresco Extension Archetype home
|
||||
|
||||
You've reached the Sourcesense ({{ ${site_pom_url} }}) Maven Alfresco Extension archetype home page (version: ${site_pom_version})
|
||||
You've reached the ({{ ${site_pom_url} }}) Maven Alfresco Extension archetype home page (version: ${site_pom_version})
|
||||
|
||||
|
||||
|
||||
@@ -18,24 +18,39 @@ Description
|
||||
|
||||
|
||||
|
||||
Quick Start (maven2)
|
||||
Quick Start Project Creation
|
||||
|
||||
For a quick start you can a maven alfresco extension project created by just running <<(maven 2.0.6+ required)>>:
|
||||
|
||||
--------------------------------------------
|
||||
mvn archetype:generate -DarchetypeCatalog=http://repository.sourcesense.com/nexus/content/repositories/alfresco.public.releases/archetype-catalog.xml
|
||||
mvn archetype:generate -DarchetypeCatalog=http://maven.alfresco.com/nexus/content/repositories/releases/archetype-catalog.xml
|
||||
--------------------------------------------
|
||||
|
||||
and then choose the option 'maven-alfresco-extension-archetype'
|
||||
and then choose the option 'maven-alfresco-extension-archetype' and fill your custom project information. You can also do this via Eclipse
|
||||
using the m2eclipse plugin.
|
||||
|
||||
Quick Start (Ant)
|
||||
|
||||
For a quick start you can a ant alfresco extension project created by running <<(Default target : package)>> :
|
||||
|
||||
Run your project in 3 minutes
|
||||
|
||||
The command below allows you to package your customization, run unit tests and eventually run jetty embedded with Alfresco
|
||||
|
||||
--------------------------------------------
|
||||
Download archetype - (On unix like you could : wget http://repository.sourcesense.com/maven2/com/sourcesense/alfresco/maven-alfresco-extension-archetype/1.0.0/maven-alfresco-extension-archetype-1.0.0.jar)
|
||||
Unzip maven-alfresco-extension-archetype-1.0.0.jar
|
||||
Rename mv archetype-resources folder into your desired project name - (On unix like you could : mv archetype-resources my-alfresco-customization)
|
||||
Enter my-alfresco-customization folder
|
||||
ant
|
||||
-------------------------------------------
|
||||
mvn install -Prun
|
||||
--------------------------------------------
|
||||
|
||||
You should be able to point your browser to http://localhost:8080/alfresco and see your nice custom Alfresco running.
|
||||
You might need to raise the MAVEN_OPTS memory allocated to Maven, see the FAQ section for this {{faq.html}}. \
|
||||
|
||||
<<Prerequisite>>:
|
||||
|
||||
The only prerequisite is to have a Mysql instance running with proper permissions for the DB user, password and name configured in the POM.
|
||||
The default configuration can be found in the generated pom.xml file and goes as follows:
|
||||
|
||||
--------------------------------------------
|
||||
<alfresco.data.location>./alf_data_jetty</alfresco.data.location>
|
||||
<alfresco.db.name>alf_jetty</alfresco.db.name>
|
||||
<alfresco.db.username>alfresco</alfresco.db.username>
|
||||
<alfresco.db.password>alfresco</alfresco.db.password>
|
||||
--------------------------------------------
|
||||
|
||||
|
@@ -0,0 +1,55 @@
|
||||
What can this build do?
|
||||
|
||||
This Maven Alfresco build process allows you to develop, test, run, document and release your Alfresco extension project.
|
||||
You can also depend on AMP files deployed on a Maven repository (either manually or using the Maven Alfresco AMP archetype),
|
||||
by adding the following <<< <dependency> >>> snippet to your Extension pom.xml:
|
||||
|
||||
--------------------------------------------
|
||||
<dependency>
|
||||
<groupId>your.company</groupId>
|
||||
<artifactId>youramp</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<scope>runtime</scope>
|
||||
<type>amp</type>
|
||||
</dependency>
|
||||
--------------------------------------------
|
||||
|
||||
This operation will result in automated AMP unpacking in your Extension WAR file during the normal build process (e.g. mvn package or mvn install).
|
||||
|
||||
|
||||
|
||||
Available maven profiles:
|
||||
|
||||
Follows a list of the accepted profiles for the Extension archetype created project:
|
||||
|
||||
* <<-Pinitialize>> \
|
||||
Drops/creates DB and removes the alf_data POM configured directory
|
||||
|
||||
* <<-Prun>> \
|
||||
Run Alfresco in an embedded Jetty
|
||||
|
||||
* <<-Pjboss>> \
|
||||
Run in a locally running Jboss configured from the POM
|
||||
|
||||
* <<-Ptomcat>> \
|
||||
Runs in a local/remote Tomcat configured from the POM
|
||||
|
||||
* <<-Prestore>> (DEPRECATED) \
|
||||
Bootstrap a full repo from 6 ACP files (pre 3.x, now full export is disabled)
|
||||
|
||||
* <<-Penterprise>> (DEPRECATED) \
|
||||
Pre 3.2 LDAP configuration support using ldap-autentication-context.xml and ldap-synchronization-contex.xml
|
||||
|
||||
|
||||
|
||||
Configuration:
|
||||
|
||||
The project created from the extension archetype is very flexible. It uses a configuration mechanism (pre 3.2) which sigles sources
|
||||
the all required properties in one single file (called <<<application.properties>>>) which is global to the whole Spring context.
|
||||
This works also against 3.2, but activities are ongoing to converge to a proper usage of the new <<<alfresco-global.properties>>.
|
||||
|
||||
Properties are stored in the <<<src/main/properties/<env>>>> folders and env=local is considered by default. You can switch the environment
|
||||
you're building for (e.g. for a release) using the <<<-Denv=yourEnv>>> switch in the command line build.
|
||||
|
||||
Also a number of properties are also accepted via command line of your build to give more configurability (if you're using the <<<env=local>>>).
|
||||
Please check the <<<pom.xml>>> and <<<README.txt>>> generated project files for more detailed comments.
|
@@ -11,13 +11,16 @@ What is an Alfresco extension?
|
||||
|
||||
Introduction:
|
||||
|
||||
This archetype developed within Sourcesense (http://www.sourcesense.com) aims to provide a standardized approach to development, release and deployment of Alfresco extensions (as opposed to AMP builds). Using standard m2 lifecycle commands (mvn compile package deploy) and generally available plugins (cargo, release, assembly) we are able to cover a very high percentage of Alfresco lifecycle common use cases. \
|
||||
This archetype was developed by Gabriele Columbro {{http://www.mindthegab.com}}, originally for Sourcesense {{http://www.sourcesense.com}} then for Alfresco Limited {{http://www.alfresco.com}}.
|
||||
It aims to provide a standardized approach to development, release and deployment of Alfresco extensions (as opposed to AMP builds). Using standard m2 lifecycle commands (mvn compile package deploy) and generally available plugins (cargo, release, assembly) we are able to cover a very high percentage of Alfresco lifecycle common use cases. \
|
||||
It can be used both with Maven2 and Ant build systems, but it must be clear that *only* the Maven2 approach provides all the automation features we will describe in the next paragraphs. \
|
||||
In addition to that the m2 approach provides a zero-conf approach while ant requires (as usual) manual gathering and selection of required alfresco libraries and webapp (please refer to README-ant.txt for further info about the Ant build). Last but not the least, m2 build is more likely to be maintained and improved (especially in the likely case Alfresco moves to maven2). \
|
||||
For more details on the Ant apprach please refer instead to {{{${site_tags_url}/${site_pom_artifactId}-${site_pom_version}<7D>src/main/resources/archetype-resources/readme-ANT.txt} Ant Readme}}.
|
||||
|
||||
|
||||
Features (maven2 only):
|
||||
|
||||
For a detail of the Maven profiles to call please refer to the Usage page {{profiles.html}}, follows a high level description of the features:
|
||||
|
||||
* <<Easy dependency management and upgrade testing>> \
|
||||
Webapp WAR dependency on Alfresco community/enterprise wars (or even environment dependent builds, e.g. WAR without log4j for Jboss-4.0.X) can be easily switched and build
|
||||
@@ -52,7 +55,7 @@ Features (maven2 only):
|
||||
Database creation/remove scripts are filtered according to the build profile, so you can directly run them for the different environment they were 'built' for.
|
||||
|
||||
* <<Easy ide (Eclipse) integration>> \
|
||||
As difficult as running mvn <<<eclipse:eclipse>>> and hitting "Refresh in your eclipse proje"
|
||||
Using m2eclipse {{http://m2eclipse.sonatype.org}}
|
||||
|
||||
* <<Release process>> \
|
||||
One command release deploy for this artifact and for the project generated from it. See README-m2.txt for more details.
|
||||
|
@@ -7,24 +7,22 @@
|
||||
<poweredBy>
|
||||
<logo name="Maven" href="http://maven.apache.org" img="http://maven.apache.org/images/logos/maven-feather.png" />
|
||||
<logo name="Alfresco - Open source ECM" img="http://alfresco.com/assets/images/icons/powered_by_alfresco.gif"
|
||||
href="http://www.sourcesense.com" />
|
||||
href="http://www.alfresco.com" />
|
||||
</poweredBy>
|
||||
<publishDate position="navigation-bottom" format="MM-dd-yy" />
|
||||
<bannerLeft>
|
||||
<name>Maven alfresco Extension archetype - v. ${project.version}</name>
|
||||
<href>${site_site_url}</href>
|
||||
<src>images/logo_noclaim.png</src>
|
||||
<src>images/Alfresco-logo-transparent.gif</src>
|
||||
</bannerLeft>
|
||||
<body>
|
||||
<links>
|
||||
<item name="Maven" href="http://maven.apache.org/" />
|
||||
<item name="Apache" href="http://www.apache.org/" />
|
||||
</links>
|
||||
|
||||
|
||||
<menu name="M2 Alfresco Extension Archetype">
|
||||
<item name="Introduction" href="/index.html" />
|
||||
<item name="README" href="/readme.html" />
|
||||
<item name="Introduction" href="index.html" />
|
||||
<item name="README" href="readme.html" />
|
||||
<item name="Generated Project Layout " href="layout.html"/>
|
||||
<item name="Usage " href="profiles.html"/>
|
||||
<item name="How To" href="http://wiki.alfresco.com/wiki/Managing_Alfresco_Lifecyle_with_Maven" />
|
||||
<item name="FAQ" href="faq.html" />
|
||||
</menu>
|
||||
@@ -35,6 +33,12 @@
|
||||
<item name="Third party how to" href="http://www.cybermagic.co.nz/wiki/display/CM/Building+Alfresco+apps+with+Maven" />
|
||||
</menu>
|
||||
|
||||
<links>
|
||||
<item name="Maven" href="http://maven.apache.org/" />
|
||||
<item name="Apache" href="http://www.apache.org/" />
|
||||
<item name="Alfresco" href="http://www.alfresco.com/" />
|
||||
</links>
|
||||
|
||||
<menu ref="reports" />
|
||||
</body>
|
||||
</project>
|
||||
|
@@ -15,8 +15,8 @@
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
<organization>
|
||||
<name>Sourcesense</name>
|
||||
<url>http://www.sourcesense.com</url>
|
||||
<name>Maven Alfresco Community</name>
|
||||
<url>http://www.alfresco.com</url>
|
||||
</organization>
|
||||
<modules>
|
||||
<module>maven-alfresco-amp-archetype</module>
|
||||
|
@@ -6,7 +6,7 @@
|
||||
</skin>
|
||||
<poweredBy>
|
||||
<logo name="Maven" href="http://maven.apache.org" img="http://maven.apache.org/images/logos/maven-feather.png"/>
|
||||
<logo name="Alfresco - Open source ECM" img="http://alfresco.com/assets/images/icons/powered_by_alfresco.gif" href="http://www.sourcesense.com" />
|
||||
<logo name="Alfresco - Open source ECM" img="http://alfresco.com/assets/images/icons/powered_by_alfresco.gif" href="http://www.alfresco.com" />
|
||||
</poweredBy>
|
||||
<publishDate position="navigation-bottom" format="MM-dd-yy"/>
|
||||
<bannerLeft>
|
||||
@@ -25,11 +25,11 @@
|
||||
</menu>
|
||||
|
||||
<menu name="Used by">
|
||||
<item name="Maven Alfresco AMP Archetype" href="http://repository.sourcesense.com/nexus/content/repositories/alfresco.public.sites/maven-alfresco-lifecycle/maven-alfresco-archetypes/maven-alfresco-amp-archetype/index.html"/>
|
||||
<item name="Maven Alfresco AMP Archetype" href="http://maven.alfresco.com/nexus/content/repositories/alfresco-docs/maven-alfresco-lifecycle/maven-alfresco-archetypes/maven-alfresco-amp-archetype/index.html"/>
|
||||
</menu>
|
||||
|
||||
<menu name="See also">
|
||||
<item name="Maven Alfresco Extension Archetype" href="http://repository.sourcesense.com/nexus/content/repositories/alfresco.public.sites/maven-alfresco-lifecycle/maven-alfresco-archetypes/maven-alfresco-extension-archetype/index.html"/>
|
||||
<item name="Maven Alfresco Extension Archetype" href="http://maven.alfresco.com/nexus/content/repositories/alfresco-docs/maven-alfresco-lifecycle/maven-alfresco-archetypes/maven-alfresco-extension-archetype/index.html"/>
|
||||
</menu>
|
||||
|
||||
<menu ref="reports"/>
|
||||
|
42
pom.xml
42
pom.xml
@@ -5,7 +5,7 @@
|
||||
<packaging>pom</packaging>
|
||||
<version>1.0.1-SNAPSHOT</version>
|
||||
<name>Maven Alfresco Lifecycle support base project</name>
|
||||
<url>http://repository.sourcesense.com/nexus/content/repositories/alfresco.public.sites/maven-alfresco-lifecycle</url>
|
||||
<url>http://maven.alfresco.com/nexus/content/repositories/alfresco-docs/maven-alfresco-lifecycle</url>
|
||||
<description>
|
||||
This project is meant to gather all commons configurations, plugins and archetypes for the full Maven Alfresco lifecycle support.
|
||||
It gathers the latest stable versions of the different components that are used to support Alfresco development on Maven in enterprise and
|
||||
@@ -45,14 +45,15 @@ community contexts.
|
||||
<developerConnection>scm:svn:https://maven-alfresco-archetypes.googlecode.com/svn/trunk</developerConnection>
|
||||
<url>https://maven-alfresco-archetypes.googlecode.com/svn/trunk</url>
|
||||
</scm>
|
||||
<!-- New Alfresco nexus instance -->
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>ss-public-mirror</id>
|
||||
<url>http://repository.sourcesense.com/nexus/content/groups/public</url>
|
||||
<id>alfresco-public</id>
|
||||
<url>http://maven.alfresco.com/nexus/content/groups/public</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>ss-public-snapshots-mirror</id>
|
||||
<url>http://repository.sourcesense.com/nexus/content/groups/public-snapshots</url>
|
||||
<id>alfresco-public-snapshots</id>
|
||||
<url>http://maven.alfresco.com/nexus/content/groups/public-snapshots</url>
|
||||
<snapshots>
|
||||
<enabled>true</enabled>
|
||||
<updatePolicy>daily</updatePolicy>
|
||||
@@ -61,12 +62,12 @@ community contexts.
|
||||
</repositories>
|
||||
<pluginRepositories>
|
||||
<pluginRepository>
|
||||
<id>ss-public-mirror</id>
|
||||
<url>http://repository.sourcesense.com/nexus/content/groups/public</url>
|
||||
<id>alfresco-public</id>
|
||||
<url>http://maven.alfresco.com/nexus/content/groups/public</url>
|
||||
</pluginRepository>
|
||||
<pluginRepository>
|
||||
<id>ss-public-snapshots-mirror</id>
|
||||
<url>http://repository.sourcesense.com/nexus/content/groups/public-snapshots</url>
|
||||
<id>alfresco-public-snapshots</id>
|
||||
<url>http://maven.alfresco.com/nexus/content/groups/public-snapshots</url>
|
||||
<snapshots>
|
||||
<enabled>true</enabled>
|
||||
<updatePolicy>daily</updatePolicy>
|
||||
@@ -98,6 +99,17 @@ community contexts.
|
||||
<role>Maven Calm Expert</role>
|
||||
</roles>
|
||||
</developer>
|
||||
<developer>
|
||||
<id>carlo.sciolla</id>
|
||||
<name>Carlo Sciolla</name>
|
||||
<email>m.pillitu@sourcesense.com</email>
|
||||
<organization>Sourcesense</organization>
|
||||
<organizationUrl>http://www.sourcesense.com</organizationUrl>
|
||||
<roles>
|
||||
<role>Infra support</role>
|
||||
<role>Developer</role>
|
||||
</roles>
|
||||
</developer>
|
||||
</developers>
|
||||
<mailingLists>
|
||||
<mailingList>
|
||||
@@ -213,16 +225,16 @@ community contexts.
|
||||
</reporting>
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>ss-public</id>
|
||||
<url>http://repository.sourcesense.com/nexus/content/repositories/alfresco.public.releases</url>
|
||||
<id>alfresco-releases</id>
|
||||
<url>http://maven.alfresco.com/nexus/content/repositories/releases</url>
|
||||
</repository>
|
||||
<snapshotRepository>
|
||||
<id>ss-public-snapshots</id>
|
||||
<url>http://repository.sourcesense.com/nexus/content/repositories/alfresco.public.snapshots</url>
|
||||
<id>alfresco-snapshots</id>
|
||||
<url>http://maven.alfresco.com/nexus/content/repositories/snapshots</url>
|
||||
</snapshotRepository>
|
||||
<site>
|
||||
<id>ss-public-sites</id>
|
||||
<url>dav:http://repository.sourcesense.com/nexus/content/repositories/alfresco.public.sites/maven-alfresco-lifecycle</url>
|
||||
<id>alfresco-docs</id>
|
||||
<url>dav:http://maven.alfresco.com/nexus/content/repositories/alfresco-docs-staging/maven-alfresco-lifecycle</url>
|
||||
</site>
|
||||
</distributionManagement>
|
||||
</project>
|
||||
|
@@ -4,6 +4,18 @@
|
||||
<author email="gabriele.columbro@alfresco.com">Gabriele Columbro</author>
|
||||
</properties>
|
||||
<body>
|
||||
<release version="1.0.1" date="2009-12-03" description="Complete moving of the full infrastructure to Alfresco Community Maven Repository and Share Addon">
|
||||
<action dev="columbro" type="add">
|
||||
Moved all the archetypes to work against http://maven.alfresco.com
|
||||
</action>
|
||||
<action dev="columbro" type="add">
|
||||
Updated documentation to point to the new infrastructure
|
||||
</action>
|
||||
<action dev="columbro" type="add">
|
||||
Added support for Alfresco SHARE archetype
|
||||
</action>
|
||||
|
||||
</release>
|
||||
<release version="1.0.0" date="2009-11-03" description="Complete refactoring of the full support in one multimodule project (maven-alfresco-lifecycle)">
|
||||
<action dev="columbro" type="add">
|
||||
Linked all sub modules.
|
||||
|
@@ -10,16 +10,16 @@
|
||||
href="http://www.alfresco.com" />
|
||||
</poweredBy>
|
||||
<publishDate position="navigation-bottom" format="MM-dd-yy" />
|
||||
<bannerLeft>
|
||||
<name>Maven Alfresco Lifecycle Support - v. ${project.version}</name>
|
||||
<href>${site_site_url}</href>
|
||||
<src>images/logo_noclaim.png</src>
|
||||
</bannerLeft>
|
||||
<bannerLeft>
|
||||
<name>Maven alfresco Extension archetype - v. ${project.version}</name>
|
||||
<href>http://www.alfresco.com</href>
|
||||
<src>images/Alfresco-logo-transparent.gif</src>
|
||||
</bannerLeft>
|
||||
<body>
|
||||
<links>
|
||||
<item name="Maven" href="http://maven.apache.org/" />
|
||||
<item name="Apache" href="http://www.apache.org/" />
|
||||
<item name="Alfresco" href="http://www.alfresco.org/" />
|
||||
<item name="Alfresco" href="http://www.alfresco.com/" />
|
||||
<item name="Project founder" href="http://www.mindthegab.com/" />
|
||||
</links>
|
||||
|
||||
@@ -33,12 +33,10 @@
|
||||
<item name="FAQ" href="faq.html" />
|
||||
</menu>
|
||||
|
||||
|
||||
|
||||
<menu name="See also">
|
||||
<item name="Maven Alfresco AMP Archetype" href="http://repository.sourcesense.com/nexus/content/repositories/alfresco.public.sites/maven-alfresco-lifecycle/maven-alfresco-archetype/maven-alfresco-amp-archetype/index.html" />
|
||||
<item name="Maven AMP Plugin" href="http://repository.sourcesense.com/nexus/content/repositories/alfresco.public.sites/maven-alfresco-lifecycle/plugins/maven-amp-plugin/index.html" />
|
||||
<item name="Third party how to" href="http://www.cybermagic.co.nz/wiki/display/CM/Building+Alfresco+apps+with+Maven" />
|
||||
<item name="Maven Alfresco AMP Archetype" href="http://maven.alfresco.com/nexus/content/repositories/alfresco-docs/maven-alfresco-lifecycle/maven-alfresco-archetype/maven-alfresco-amp-archetype/index.html" />
|
||||
<item name="Maven AMP Plugin" href="http://maven.alfresco.com/nexus/content/repositories/alfresco-docs/maven-alfresco-lifecycle/plugins/maven-amp-plugin/index.html" />
|
||||
|
||||
</menu>
|
||||
|
||||
<menu ref="reports" />
|
||||
|
Reference in New Issue
Block a user