cancel
Showing results for 
Search instead for 
Did you mean: 

Third-party libraries version / naming convention

nis
Champ in-the-making
Champ in-the-making
Hello,

I have some question about third-party libraries naming :
1) have you the version of all used third-party librairies in Alfresco ?
2) have you think to use the Maven naming convention ? (http://maven.apache.org/)


acegi-security-0.8.2.jar
activation.jar -> version ?
addressing-1.0.jar
antlr-2.7.5H3.jar
aopalliance.jar -> version ?
axis.jar -> version ?
bcel.jar -> version ?
bcprov-jdk15-129.jar
cglib-nodep-2.1.jar
comment-stripper.jar -> version ?
commons-beanutils-1.6.1.jar
commons-codec-1.2.jar
commons-collections-3.0.jar
commons-dbcp-1.2.1.jar
commons-digester-1.5.jar
commons-discovery-0.2.jar
commons-el.jar -> version ?
commons-fileupload-1.1-dev.jar
commons-io-1.1.jar
commons-logging.jar -> version ?
commons-pool.jar -> version ?
commons-validator.jar -> version ?
concurrent.jar -> version ?
core.jar -> version ?
cryptix-jce-provider.jar -> version ?
dom4j-1.6.1.jar
ehcache-1.1.jar
freemarker.jar -> version ?
hibernate3.jar -> version ?
hrtlib.jar -> version ?
htmlparser-1.6.jar
jakarta-oro-2.0.8.jar
jaxen-1.1-beta-8.jar
jaxrpc.jar -> version ?
jboss-cache.jar -> version ?
jboss-common.jar -> version ?
jboss-jmx.jar -> version ?
jboss-system.jar -> version ?
jcr-1.0.jar
jgroups-2.2.8.jar
jibx-bind.jar -> version ?
jibx-run.jar -> version ?
jid3lib-0.5.jar
JMagick.jar -> version ?
jooconverter.jar -> version ?
jstl.jar -> version ?
jta.jar -> version ?
jug.jar -> version ?
juh.jar -> version ?
jurt.jar -> version ?
jut.jar -> version ?
log4j-1.2.8.jar
lucene-1.4.3.jar
mail.jar -> version ?
myfaces-api.jar -> version ?
myfaces-impl.jar -> version ?
mysql-connector-java-3.1.10-bin.jar
odf_utils.jar -> version ?
odmg-3.0.jar
opensaml-1.0.1.jar
pdfbox-0.7.2.jar
poi-2.5.1.jar
portlet-api-lib.jar -> version ?
quartz.jar -> version ?
remote-api.jar -> version ?
repository.jar -> version ?
ridl.jar -> version ?
saaj.jar -> version ?
sandbox.jar -> version ?
saxpath.jar -> version ?
spring.jar -> version ?
standard.jar -> version ?
swarmcache-1.0RC2.jar
tm-extractors-0.4_patched.jar
unoil.jar -> version ?
web-client.jar -> version ?
wsdl4j-1.5.1.jar
wss4j.jar -> version ?
xalan-2.6.0.jar
xmlsec-1.2.1.jar
xpp3.jar -> version ?
yguard.jar -> version ?
20 REPLIES 20

yujin_kim
Champ in-the-making
Champ in-the-making
Gavin

Please check the jira (http://www.alfresco.org/jira/browse/BDE-32) and give it a go on the maven build scripts.

the only thing you are required to do is change eclipse project name to match the artifactId found in pom.xml of each projects.  the reason is artifactId is used as a jar file name and the project names you are using is not in supported format. 

also made webcliient's project name as "aflresco" because it makes it easier when integrating with webtools which will be discussed later here.

so to get this to work do the following:
- install maven 2.0.2 or above and put maven's bin directory in your path
- create a new workspace and do a fresh check out from svn
- you need to set up a local repository server that's accessible from the web.   (refer to alfresco-parent/src/main/scripts/mavenDependencyDeploy.sh). This is to cover the depedencies that's not available from maven's central repo, including the custom patched jars.
- remove all eclipse related files (.classpath, .project, etc).
- unzip the file (aflresco-maven2.zip) from [alfresco source]/root/projects directory.
- from alfresco-parent, run "mvn eclipse:eclipse".  this generates eclipse project files including webtools files. refresh your eclipse when done.
- from alfresco-parent, run "mvn install' to compile. refresh your eclipse when done.
- if you have webtools 1.0.1 in your eclipse, set up a server and you should be able to mount alfresco to the server instance.  (but not working 100% due to some other issues)

now this build is not fully functional (ie if you do a clean build inside eclipse, jibx doesn't run and causes the problems.)  but you will see you can manage your dependencies fairly easily.

Please send me any questions/comments and I would be more than happy to assit you to walk you through the process.  (even a phone conversation or IM converstaion is a possibility depending on how eager you are to get thsi to work on your end.)

Yujin Kim
Vivakos, Inc

btorfs
Champ in-the-making
Champ in-the-making
jibx doesn't run and causes the problems:

The jibx plugin for maven2 does not work correctly, make an ant task for this in the pomfile of the repository project.

should look like (paths will differ):

<plugin>
             <artifactId>maven-antrun-plugin</artifactId>
             <executions>
               <execution>
                 <phase>test-compile</phase>
                 <configuration>
                   <tasks>
                     <taskdef name="bind" classname="org.jibx.binding.ant.CompileTask"
                     classpath="src/main/java/ant/jibx-bind.jar;src/main/java/ant/jibx-run.jar;src/main/java/ant/bcel.jar;src/main/java/ant/xpp3.jar" />
                     <bind verbose="false" load="true" binding="/src/main/java/org/alfresco/repo/dictionary/m2binding.xml">
                    <classpathset dir="target/classes"/>
               </bind>
    
                   </tasks>
                 </configuration>
                 <goals>
                   <goal>run</goal>
                 </goals>
               </execution>
             </executions>
           </plugin>

dschmalz
Champ in-the-making
Champ in-the-making
Hello,

I don't seem to have access to the JIRA issue anymore. Is there any working link to above mentionned maven pom files or would it be possible to post them directly in this post?

Thanks very much,
David

nikkijuk
Champ in-the-making
Champ in-the-making
Embedding Alfresco 2.0 server components to Liferay portlet seems to  be tricky. Creating Alfresco 2.0 maven script would mean of digging out version number of 50 libraries, and creating own artifacts for at least some patched and beta libraries. Also, in addition to that, it would be needed to really check that no other than mentioned patched versions are modified. Since we have other set of libraries already in use, we would also need to make compromises of what to use, and which versions of ours are compatible with ones used at Alfresco. Alfresco uses some of beta versions, where it might not be guaranteed that they are compatible with anything before or after that version. All this makes my head bit dizzy, and I leave to hope that alfresco team would make this work to me in upcoming 2.1 version. Since that our Alfresco based applications might not be deployed to JBoss.

- Jukkis

Afresco SDK SERVER 2.0.0 dependencies

\server

alfresco-jndi-client.jar   2.0.0
alfresco-mbeans.jar      2.0.0
config.jar         2.0.0
core.jar         2.0.0
dep.txt            2.0.0
remote-api.jar         2.0.0
repository.jar         2.0.0
web-client.jar         2.0.0


\server\dependencies

acegi-security-0.8.2_patched.jar   0.8.2_patched
activation.jar         ?
addressing-1.0.jar      1.0
ant-contrib.jar         ?
ant.jar            ?
antlr-2.7.5H3.jar      2.7.5H3
aopalliance.jar         ?
axis-ant.jar         ?
axis.jar         ?
bcel.jar         ?
bcprov-jdk15-129.jar      1.2.9 ?      
bsf-2.4.0.jar         2.4.0
catalina.jar         ?
cglib-nodep-2.2_beta1.jar   2.2_beta1
chiba-1.3.0.jar         1.3.0
comment-stripper.jar      ?
commons-modeler.jar      ?
cpool.jar         ?
cryptix-jce-provider.jar   ?
dom4j-1.6.1.jar         1.6.1
ehcache-1.2.2.jar      1.2.2
exclude-doclet.jar      ?
ontbox-0.1.0.jar      0.1.0
freemarker.jar         ?
hibernate-3.2.1.jar      3.2.1
rtlib.jar         ?
sqldb.jar         ?
tmlparser-1.6.jar      1.6
jakarta-oro-2.0.8.jar      2.0.8
jaxen-1.1-beta-8.jar      1.1-beta-8
jaxrpc.jar         ?
jbpm            ?
jcr-1.0.jar         1.0
jid3lib-0.5.jar         0.5
joda-time-1.2.1.jar      1.2.1.
jooconverter-2.1.0.jar      2.1.0
jsp.jar            ?
jstl.jar         ?
jta.jar            ?
jug.jar            ?
junit.jar         ?
log4j-1.2.8.jar         1.2.8
lucene-analyzers-2.0.0.jar   2.0.0
lucene-core-2.0.0.jar      2.0.0
lucene-snowball-2.0.0.jar   2.0.0
mail.jar         ?
myfaces-api.jar         ?
myfaces-impl.jar      ?
mysql-connector-java-5.0.3-bin.jar   5.0.3
naming-factory.jar      ?
naming-resources.jar      ?
odf_utils.jar         ?
odmg-3.0.jar         3.0
opensaml-1.0.1.jar      1.0.1
pdfbox-0.7.3.jar      0.7.3
poi-2.5.1_patched.jar      2.5.1_patched
portlet-api-lib.jar      ?
quartz-1.6.0.jar      1.6.0
resolver.jar         ?
rhino-js-1.6R4.jar      1.6R4
saaj.jar         ?
saxpath.jar         ?
servlet.jar         ?
spring-mock.jar         ?
spring.jar         ?
standard.jar         ?
tlc124.jar         1.2.4         
tlddoc.jar         ?
tm-extractors-0.4_patched.jar   0.4_patched
tomcat-coyote.jar      ?
tomcat-util.jar         ?
truezip.jar         ?
wsdl4j-1.5.1.jar      1.5.1
wss4j.jar         ?
xercesImpl-2.8.0.jar      2.8.0
xml-apis.jar         ?
xmlsec-1.4.0.jar      1.4.0
xpp3-1.1.3_8.jar      1.1.3_8
yguard.jar         ?

\server\dependencies\commons

commons-beanutils-1.6.1.jar   1.6.1
commons-codec-1.3.jar      1.3
commons-collections-3.0.jar   3.0
commons-dbcp-1.2.1.jar      1.2.1
commons-digester-1.5.jar   1.5
commons-discovery-0.2.jar   0.2
commons-el.jar         ?
commons-fileupload-1.1.1.jar   1.1.1
commons-httpclient-3.0.jar   3.0
commons-io-1.1.jar      1.1
commons-jxpath-1.2.jar      1.2
commons-logging.jar      ?
commons-pool-1.3.jar      1.3
commons-validator.jar

\server\dependencies\fop

avalon-framework-4.2.0.jar   4.2.0
fop-0.92beta.jar      0.92beta
xmlgraphics-commons-1.0.jar   1.0

\server\dependencies\jbpm

bsh-1.3.0.jar         1.3.0
jbpm-3.1.2.jar         3.1.2
jbpm-identity-3.1.2.jar      3.1.2
springmodules-jbpm31.jar   31

\server\dependencies\jgroups

jgroups-2.2.8.jar      2.2.8

\server\dependencies\jibx

jibx-bind.jar         ?
jibx-run.jar         ?

\server\dependencies\jmagick

JMagick.jar         ?

\server\dependencies\one-jar

one-jar-boot-0.95.jar      0.95

\server\dependencies\openoffice

jut.jar            ?
openoffice-juh-2.0.3.jar   2.0.3
openoffice-jurt-2.0.3.jar   2.0.3
openoffice-ridl-2.0.3.jar   2.0.3
openoffice-sandbox-2.0.3.jar   2.0.3
openoffice-unoil-2.0.3.jar   2.0.3
xstream-1.1.3.jar      1.1.3

\server\dependencies\xalan-2.7.0

serializer.jar         2.7.0 ?
xalan.jar         2.7.0

mindthegab
Champ in-the-making
Champ in-the-making
Hi all,
maybe you can be interested on this project I opened on Forge:

http://forge.alfresco.com/projects/m2alfresco


It aims to have iteratively:

1. A maven-assembly-plugin configuration for creating the AMP structure
2. A maven-archetype for building extensions (correctly configured pom and previously mentioned assembly configuration)
3. A maven-alfresco-plugin which wraps the MMT to make lifecycle management all under maven control
4. NICE TO HAVE : build alfresco with maven (maybe you can provide some pom already)

Join join join 😉

Ciao,
Gab

bmeurant
Champ in-the-making
Champ in-the-making
Hello,

This post for several reasons :

1. I am working on construction of an Alfresco 2.1.0 pom file that you could find below :
You can see that some dependencies cannot be found on Internet repositories. You have to manage your own repo, donwload jars and install dependencies on your local repo to use this pom.


<?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.alfresco</groupId>
    <artifactId>alfresco</artifactId>
    <packaging>pom</packaging>
    <version>2.1.0</version>
    <dependencies>
       <dependency>
           <groupId>org.alfresco</groupId>
           <artifactId>alfresco-core</artifactId>
           <version>2.1.0</version>
           </dependency>
      <dependency>
           <groupId>org.alfresco</groupId>
           <artifactId>alfresco-deployment</artifactId>
           <version>2.1.0</version>
       </dependency>
      <dependency>
           <groupId>org.alfresco</groupId>
           <artifactId>alfresco-jndi-client</artifactId>
           <version>2.1.0</version>
       </dependency>
      <dependency>
           <groupId>org.alfresco</groupId>
           <artifactId>alfresco-linkvalidation</artifactId>
           <version>2.1.0</version>
           </dependency>
      <dependency>
           <groupId>org.alfresco</groupId>
           <artifactId>alfresco-mbeans</artifactId>
           <version>2.1.0</version>
       </dependency>
      <dependency>
           <groupId>org.alfresco</groupId>
           <artifactId>alfresco-remote-api</artifactId>
           <version>2.1.0</version>
           </dependency>
      <dependency>
           <groupId>org.alfresco</groupId>
           <artifactId>alfresco-repository</artifactId>
           <version>2.1.0</version>
       </dependency>
      <dependency>
           <groupId>org.alfresco</groupId>
           <artifactId>alfresco-web-client</artifactId>
           <version>2.1.0</version>
          </dependency>      
      <dependency>
           <groupId>org.alfresco</groupId>
           <artifactId>alfresco-config</artifactId>
           <version>2.1.0</version>
       </dependency>
      <dependency>
          <groupId>jug</groupId>
          <artifactId>jug</artifactId>
          <version>1.1.2</version>
      </dependency>
      <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring</artifactId>
          <version>2.0.2</version>
         <exclusions>
            <exclusion>
               <groupId>commons-logging</groupId>
               <artifactId>commons-logging</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
          <groupId>org.hibernate</groupId>
          <artifactId>hibernate</artifactId>
          <version>3.2.1.ga</version>
         <exclusions>
            <exclusion>
               <groupId>cglib</groupId>
               <artifactId>cglib</artifactId>
            </exclusion>
            <exclusion>
               <groupId>asm</groupId>
               <artifactId>asm</artifactId>
            </exclusion>
            <exclusion>
               <groupId>asm</groupId>
               <artifactId>asm-attrs</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
          <groupId>cglib</groupId>
          <artifactId>cglib-nodep</artifactId>
          <version>2.2_beta1</version>
      </dependency>
      <dependency>
          <groupId>net.sf.ehcache</groupId>
          <artifactId>ehcache</artifactId>
          <version>1.3.0</version>
         <exclusions>
            <exclusion>
               <groupId>backport-util-concurrent</groupId>
               <artifactId>backport-util-concurrent</artifactId>
            </exclusion>
            <exclusion>
               <groupId>net.sf.jsr107cache</groupId>
               <artifactId>jsr107cache</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
          <groupId>commons-dbcp</groupId>
          <artifactId>commons-dbcp</artifactId>
          <version>1.2.1</version>
      </dependency>
      <dependency>
          <groupId>commons-beanutils</groupId>
          <artifactId>commons-beanutils</artifactId>
          <version>1.7.0</version>
      </dependency>
      <dependency>
          <groupId>commons-collections</groupId>
          <artifactId>commons-collections</artifactId>
          <version>3.1</version>
      </dependency>
      <dependency>
          <groupId>commons-pool</groupId>
          <artifactId>commons-pool</artifactId>
          <version>1.3</version>
      </dependency>
      <dependency>
          <groupId>commons-codec</groupId>
          <artifactId>commons-codec</artifactId>
          <version>1.3</version>
      </dependency>
      <dependency>
          <groupId>commons-digester</groupId>
          <artifactId>commons-digester</artifactId>
          <version>1.6</version>
      </dependency>
      <dependency>
          <groupId>commons-discovery</groupId>
          <artifactId>commons-discovery</artifactId>
          <version>0.2</version>
      </dependency>
      <dependency>
          <groupId>commons-el</groupId>
          <artifactId>commons-el</artifactId>
          <version>1.0</version>
      </dependency>
      <dependency>
          <groupId>commons-fileupload</groupId>
          <artifactId>commons-fileupload</artifactId>
          <version>1.1</version>
      </dependency>
      <dependency>
          <groupId>commons-httpclient</groupId>
          <artifactId>commons-httpclient</artifactId>
          <version>3.0</version>
      </dependency>
      <dependency>
          <groupId>commons-logging</groupId>
          <artifactId>commons-logging</artifactId>
          <version>1.0.4</version>
      </dependency>
      <dependency>
          <groupId>commons-io</groupId>
          <artifactId>commons-io</artifactId>
          <version>1.1</version>
      </dependency>
      <dependency>
          <groupId>commons-jxpath</groupId>
          <artifactId>commons-jxpath</artifactId>
          <version>1.2</version>
         <exclusions>
            <exclusion>
               <groupId>ant</groupId>
               <artifactId>ant-optional</artifactId>
            </exclusion>
            <exclusion>
               <groupId>jdom</groupId>
               <artifactId>jdom</artifactId>
            </exclusion>
            <exclusion>
               <groupId>xerces</groupId>
               <artifactId>xerces</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
          <groupId>commons-lang</groupId>
          <artifactId>commons-lang</artifactId>
          <version>2.1</version>
      </dependency>
      <dependency>
          <groupId>commons-validator</groupId>
          <artifactId>commons-validator</artifactId>
          <version>1.1.3</version>
      </dependency>
      <dependency>
          <groupId>xerces</groupId>
          <artifactId>xercesImpl</artifactId>
          <version>2.8.0</version>
      </dependency>
      <!– To install manually on a local repo –>
      <dependency>
          <groupId>net.sf.acegi-security</groupId>
          <artifactId>acegi-security</artifactId>
          <version>0.8.2_patched</version>
      </dependency>
      <!– To install manually on a local repo –>
      <dependency>
          <groupId>opensymphony</groupId>
          <artifactId>quartz</artifactId>
          <version>1.6.0</version>
      </dependency>
      <!– To install manually on a local repo –>
      <dependency>
          <groupId>net.sf.jooreports</groupId>
          <artifactId>jooconverter</artifactId>
          <version>2.1.0</version>
      </dependency>
      <dependency>
         <groupId>org.openoffice</groupId>
         <artifactId>juh</artifactId>
         <version>2.1.0</version>
      </dependency>
      <dependency>
         <groupId>org.openoffice</groupId>
         <artifactId>jurt</artifactId>
         <version>2.1.0</version>
      </dependency>
      <dependency>
         <groupId>org.openoffice</groupId>
         <artifactId>ridl</artifactId>
         <version>2.1.0</version>
      </dependency>
      <dependency>
         <groupId>org.openoffice</groupId>
         <artifactId>unoil</artifactId>
         <version>2.1.0</version>
      </dependency>
      <dependency>
          <groupId>freemarker</groupId>
          <artifactId>freemarker</artifactId>
          <version>2.3.8</version>
      </dependency>
      <!– To install manually on a local repo –>
      <dependency>
          <groupId>rhino</groupId>
          <artifactId>js</artifactId>
          <version>1.6R4</version>
      </dependency>
      <dependency>
          <groupId>org.springmodules</groupId>
          <artifactId>spring-modules-jbpm31</artifactId>
          <version>0.8a</version>
         <exclusions>
            <exclusion>
                <groupId>org.springframework</groupId>
               <artifactId>spring-core</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.springframework</groupId>
               <artifactId>spring-beans</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.springframework</groupId>
               <artifactId>spring-context</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.springframework</groupId>
               <artifactId>spring-dao</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.springframework</groupId>
               <artifactId>spring-support</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.springframework</groupId>
               <artifactId>spring-hibernate3</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.springframework</groupId>
               <artifactId>spring-jdbc</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.springframework</groupId>
               <artifactId>spring-aop</artifactId>
            </exclusion>
            <exclusion>
                <groupId>jboss</groupId>
               <artifactId>jbpm</artifactId>
            </exclusion>
            <exclusion>
                <groupId>bsh</groupId>
               <artifactId>bsh</artifactId>
            </exclusion>
            <exclusion>
                <groupId>ehcache</groupId>
               <artifactId>ehcache</artifactId>
            </exclusion>
            <exclusion>
               <groupId>cglib</groupId>
               <artifactId>cglib-nodep</artifactId>
            </exclusion>
            <exclusion>
               <groupId>hsqldb</groupId>
               <artifactId>hsqldb</artifactId>
            </exclusion>
            <exclusion>
               <groupId>geronimo-spec</groupId>
               <artifactId>geronimo-spec-jta</artifactId>
            </exclusion>
            <exclusion>
               <groupId>log4j</groupId>
               <artifactId>log4j</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <!– To install manually on a local repo –>
      <dependency>
         <groupId>org.jbpm</groupId>
         <artifactId>jbpm-identity</artifactId>
         <version>3.2</version>
      </dependency>
      <!– To install manually on a local repo –>
      <dependency>
         <groupId>org.jbpm</groupId>
         <artifactId>jbpm-jpdl</artifactId>
         <version>3.2_patched</version>
      </dependency>
      <dependency>
          <groupId>hsqldb</groupId>
          <artifactId>hsqldb</artifactId>
          <version>1.8.0.1</version>
      </dependency>
      <dependency>
          <groupId>org.beanshell</groupId>
          <artifactId>bsh</artifactId>
          <version>1.3.0</version>
      </dependency>
      <dependency>
          <groupId>javax.jcr</groupId>
          <artifactId>jcr</artifactId>
          <version>1.0</version>
      </dependency>
      <!– To install manually on a local repo –>
      <dependency>
          <groupId>org.jibx</groupId>
          <artifactId>jibx-run</artifactId>
          <version>rc0</version>
      </dependency>
      <!– To install manually on a local repo –>
      <dependency>
          <groupId>org.jibx</groupId>
          <artifactId>jibx-bind</artifactId>
          <version>rc0</version>
      </dependency>
      <dependency>
          <groupId>xpp3</groupId>
          <artifactId>xpp3</artifactId>
          <version>1.1.3.3</version>
      </dependency>
      <dependency>
          <groupId>org.apache.lucene</groupId>
          <artifactId>lucene-core</artifactId>
          <version>2.1.0</version>
      </dependency>
      <dependency>
          <groupId>org.apache.lucene</groupId>
          <artifactId>lucene-analyzers</artifactId>
          <version>2.1.0</version>
      </dependency>
      <dependency>
          <groupId>org.apache.lucene</groupId>
          <artifactId>lucene-snowball</artifactId>
          <version>2.1.0</version>
      </dependency>
      <dependency>
          <groupId>cryptix-jce</groupId>
          <artifactId>cryptix-jce-provider</artifactId>
          <version>20050328</version>
      </dependency>
      <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.0.5</version>
        </dependency>
      <dependency>
            <groupId>javax.mail</groupId>
            <artifactId>mail</artifactId>
            <version>1.3.2</version>
        </dependency>
      <!– To install manually on a local repo –>
      <dependency>
          <groupId>org.apache</groupId>
          <artifactId>avalon-framework</artifactId>
          <version>4.2.0</version>
      </dependency>
      <dependency>
          <groupId>ant</groupId>
          <artifactId>ant</artifactId>
          <version>1.6.5</version>
      </dependency>
      <!– To install manually on a local repo –>
      <dependency>
          <groupId>poi</groupId>
          <artifactId>poi</artifactId>
          <version>2.5.1_patched</version>
      </dependency>
      <!– To install manually on a local repo –>
      <dependency>
          <groupId>org.farng</groupId>
          <artifactId>jid3lib</artifactId>
          <version>0.5</version>
      </dependency>
      <!– To install manually on a local repo –>
      <dependency>
          <groupId>com.catcode</groupId>
          <artifactId>odf-utils</artifactId>
          <version>1.0</version>
      </dependency>
      <dependency>
          <groupId>pdfbox</groupId>
          <artifactId>pdfbox</artifactId>
          <version>0.7.3</version>
         <exclusions>
            <exclusion>
               <groupId>org.jempbox</groupId>
               <artifactId>jempbox</artifactId>
            </exclusion>
            <exclusion>
               <groupId>bouncycastle</groupId>
               <artifactId>bcmail-jdk14</artifactId>
            </exclusion>
            <exclusion>
               <groupId>bouncycastle</groupId>
               <artifactId>bcprov-jdk14</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
          <groupId>bouncycastle</groupId>
          <artifactId>bcprov-jdk15</artifactId>
          <version>136</version>
      </dependency>
      <!– To install manually on a local repo –>
      <dependency>
          <groupId>org.apache.poi</groupId>
          <artifactId>tm-extractors</artifactId>
          <version>0.4_patched</version>
      </dependency>
      <dependency>
          <groupId>xstream</groupId>
          <artifactId>xstream</artifactId>
          <version>1.1.3</version>
      </dependency>
      <dependency>
          <groupId>jaxen</groupId>
          <artifactId>jaxen</artifactId>
          <version>1.1-beta-8</version>
         <exclusions>
            <exclusion>
               <groupId>xerces</groupId>
               <artifactId>xmlParserAPIs</artifactId>
            </exclusion>
            <exclusion>
               <groupId>org.ccil.cowan.tagsoup</groupId>
               <artifactId>tagsoup</artifactId>
            </exclusion>
            <exclusion>
               <groupId>xom</groupId>
               <artifactId>xom</artifactId>
            </exclusion>
            <exclusion>
               <groupId>jdom</groupId>
               <artifactId>jdom</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
          <groupId>saxpath</groupId>
          <artifactId>saxpath</artifactId>
          <version>1.0-FCS</version>
      </dependency>
      <dependency>
          <groupId>aopalliance</groupId>
          <artifactId>aopalliance</artifactId>
          <version>1.0</version>
      </dependency>
      <dependency>
          <groupId>org.apache.axis</groupId>
          <artifactId>addressing</artifactId>
          <version>1.0</version>
      </dependency>
      <dependency>
          <groupId>axis</groupId>
          <artifactId>axis</artifactId>
          <version>1.4</version>
         <exclusions>
            <exclusion>
               <groupId>axis</groupId>
               <artifactId>axis-jaxrpc</artifactId>
            </exclusion>
            <exclusion>
               <groupId>axis</groupId>
               <artifactId>axis-saaj</artifactId>
            </exclusion>
            <exclusion>
               <groupId>axis</groupId>
               <artifactId>axis-wsdl4j</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
          <groupId>bcel</groupId>
          <artifactId>bcel</artifactId>
          <version>5.1</version>
      </dependency>
      <dependency>
          <groupId>bsf</groupId>
          <artifactId>bsf</artifactId>
          <version>2.4.0</version>
      </dependency>
      <dependency>
         <groupId>tomcat</groupId>
         <artifactId>catalina</artifactId>
         <version>5.5.23</version>
      </dependency>
      <dependency>
          <groupId>org.chiba</groupId>
          <artifactId>chiba</artifactId>
          <version>1.3.0</version>
         <exclusions>
            <exclusion>
               <groupId>org.apache.tomcat</groupId>
               <artifactId>juli</artifactId>
            </exclusion>
            <exclusion>
               <groupId>org.apache.tomcat</groupId>
               <artifactId>annotations-api</artifactId>
            </exclusion>
            <exclusion>
               <groupId>xmlrpc</groupId>
               <artifactId>xmlrpc</artifactId>
            </exclusion>
            <exclusion>
               <groupId>commons-logging</groupId>
               <artifactId>commons-logging-api</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
          <groupId>commons-modeler</groupId>
          <artifactId>commons-modeler</artifactId>
          <version>1.1</version>
         <exclusions>
            <exclusion>
               <groupId>commons-logging</groupId>
               <artifactId>commons-logging-api</artifactId>
            </exclusion>
            <exclusion>
               <groupId>mx4j</groupId>
               <artifactId>mx4j-jmx</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
          <groupId>log4j</groupId>
          <artifactId>log4j</artifactId>
          <version>1.2.8</version>
      </dependency>
      <!– To install manually on a local repo –>
      <dependency>
          <groupId>org.sciencething</groupId>
          <artifactId>cpool</artifactId>
          <version>1.0</version>
      </dependency>
      <dependency>
          <groupId>org.codehaus.guessencoding</groupId>
          <artifactId>guessencoding</artifactId>
          <version>1.0</version>
      </dependency>
      <!– To install manually on a local repo –>
      <dependency>
          <groupId>com.vladium</groupId>
          <artifactId>hrtlib</artifactId>
          <version>1.0</version>
      </dependency>
      <dependency>
          <groupId>org.htmlparser</groupId>
          <artifactId>htmlparser</artifactId>
          <version>1.6</version>
      </dependency>
      <dependency>
          <groupId>com.ibm.icu</groupId>
          <artifactId>icu4j</artifactId>
          <version>3.6.1</version>
      </dependency>
      <dependency>
          <groupId>oro</groupId>
          <artifactId>oro</artifactId>
          <version>2.0.8</version>
      </dependency>
      <dependency>
          <groupId>javax.xml</groupId>
          <artifactId>jaxrpc-api</artifactId>
          <version>1.1</version>
      </dependency>
      <dependency>
          <groupId>joda-time</groupId>
          <artifactId>joda-time</artifactId>
          <version>1.2.1</version>
      </dependency>
      <dependency>
          <groupId>org.json</groupId>
          <artifactId>json</artifactId>
          <version>20070829</version>
      </dependency>
      <dependency>
          <groupId>javax.servlet</groupId>
          <artifactId>jstl</artifactId>
          <version>1.0</version>
      </dependency>
      <dependency>
          <groupId>tomcat</groupId>
          <artifactId>naming-factory</artifactId>
          <version>5.5.23</version>
         <exclusions>
            <exclusion>
               <groupId>commons-logging</groupId>
               <artifactId>commons-logging-api</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
          <groupId>tomcat</groupId>
          <artifactId>naming-resources</artifactId>
          <version>5.5.23</version>
         <exclusions>
            <exclusion>
               <groupId>commons-logging</groupId>
               <artifactId>commons-logging-api</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
          <groupId>odmg</groupId>
          <artifactId>odmg</artifactId>
          <version>3.0</version>
      </dependency>
      <dependency>
         <groupId>xfire</groupId>
         <artifactId>opensaml</artifactId>
         <version>1.0.1</version>
      </dependency>
      <dependency>
         <groupId>javax.portlet</groupId>
         <artifactId>portlet-api</artifactId>
         <version>1.0</version>
      </dependency>
      <dependency>
          <groupId>xml-resolver</groupId>
          <artifactId>xml-resolver</artifactId>
          <version>1.1</version>
      </dependency>
      <dependency>
          <groupId>axis</groupId>
          <artifactId>axis-saaj</artifactId>
          <version>1.2</version>
      </dependency>
      <dependency>
          <groupId>saxpath</groupId>
          <artifactId>saxpath</artifactId>
          <version>1.0-FCS</version>
      </dependency>
      <dependency>
          <groupId>taglibs</groupId>
          <artifactId>standard</artifactId>
          <version>1.1.0</version>
      </dependency>
      <dependency>
          <groupId>org.apache.myfaces.core</groupId>
          <artifactId>myfaces-api</artifactId>
          <version>1.1.5</version>
      </dependency>
      <dependency>
          <groupId>org.apache.myfaces.core</groupId>
          <artifactId>myfaces-impl</artifactId>
          <version>1.1.5</version>
      </dependency>
      <!– To install manually on a local repo –>
      <dependency>
          <groupId>de.schlichtherle</groupId>
          <artifactId>tlc</artifactId>
          <version>1.24</version>
      </dependency>
      <dependency>
          <groupId>tomcat</groupId>
          <artifactId>tomcat-coyote</artifactId>
          <version>5.5.23</version>
      </dependency><dependency>
          <groupId>tomcat</groupId>
          <artifactId>tomcat-util</artifactId>
          <version>5.5.23</version>
         <exclusions>
            <exclusion>
               <groupId>commons-logging</groupId>
               <artifactId>commons-logging-api</artifactId>
            </exclusion>
            <exclusion>
               <groupId>tomcat</groupId>
               <artifactId>tomcat-apr</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <!– To install manually on a local repo –>
      <dependency>
          <groupId>de.schlichtherle.io</groupId>
          <artifactId>truezip</artifactId>
          <version>5.1.2</version>
      </dependency>
      <dependency>
          <groupId>wsdl4j</groupId>
          <artifactId>wsdl4j</artifactId>
          <version>1.5.1</version>
      </dependency>
      <!–dependency>
         <groupId>wss4j</groupId>
         <artifactId>wss4j</artifactId>
         <version>1.11</version>
      </dependency–>
      <dependency>
         <groupId>org.apache.santuario</groupId>
         <artifactId>xmlsec</artifactId>
         <version>1.4.0</version>
      </dependency>
      <dependency>
          <groupId>xalan</groupId>
          <artifactId>xalan</artifactId>
          <version>2.7.0</version>
      </dependency>
      <dependency>
          <groupId>jgroups</groupId>
          <artifactId>jgroups</artifactId>
          <version>2.2.8</version>
      </dependency>
   </dependencies>
</project>

The pom manages most of current Alfresco 2.1.0 dependencies and all necessary dependencies. Some jars have still to be added.

2. I tried to create a project using this pom to work on alfresco extension and customization : I don't have any error anymore but my tomcat start, make things, create tables, repository, etc. but never stop. I let it do during an entire night and when i came back it was still starting and logging : Is someone know what could produce such an effect ?

3. Is an official alfresco-maven integration project in curse or in project ? I really think that, today, a maven architecture is necessary for big projects .. and alfresco is a big project. I think that such an initiative could develop use of Alfresco and integration into open source (or not) projects.

Thanks for answers and feedbacks, enhancements, etc.

Baptiste Meurant.

bmeurant
Champ in-the-making
Champ in-the-making
Hello again,

For those who were searching for all alfresco dependencies versions, you will find below those I have found downloading and working with Alfresco 2.1.0 (in maven format) :

[INFO] org.alfresco:alfrescoSmiley Tongueom:2.1.0
[INFO] +- org.alfresco:alfresco-core:jar:2.1.0:compile
[INFO] +- org.alfresco:alfresco-deployment:jar:2.1.0:compile
[INFO] +- org.alfresco:alfresco-jndi-client:jar:2.1.0:compile
[INFO] +- org.alfresco:alfresco-linkvalidation:jar:2.1.0:compile
[INFO] +- org.alfresco:alfresco-mbeans:jar:2.1.0:compile
[INFO] +- org.alfresco:alfresco-remote-api:jar:2.1.0:compile
[INFO] +- org.alfresco:alfresco-repository:jar:2.1.0:compile
[INFO] +- org.alfresco:alfresco-web-client:jar:2.1.0:compile
[INFO] +- org.alfresco:alfresco-config:jar:2.1.0:compile
[INFO] +- jug:jug:jar:1.1.2:compile
[INFO] +- org.springframework:spring:jar:2.0.2:compile
[INFO] +- org.hibernate:hibernate:jar:3.2.1.ga:compile
[INFO] |  +- javax.transaction:jta:jar:1.0.1B:compile
[INFO] |  +- dom4j:dom4j:jar:1.6.1:compile
[INFO] |  \- antlr:antlr:jar:2.7.6:compile
[INFO] +- cglib:cglib-nodep:jar:2.2_beta1:compile
[INFO] +- net.sf.ehcache:ehcache:jar:1.3.0:compile
[INFO] +- commons-dbcp:commons-dbcp:jar:1.2.1:compile
[INFO] |  \- xml-apis:xml-apis:jar:1.0.b2:compile
[INFO] +- commons-beanutils:commons-beanutils:jar:1.7.0:compile
[INFO] +- commons-collections:commons-collections:jar:3.1:compile
[INFO] +- commons-pool:commons-pool:jar:1.3:compile
[INFO] +- commons-codec:commons-codec:jar:1.3:compile
[INFO] +- commons-digester:commons-digester:jar:1.6:compile
[INFO] +- commons-discovery:commons-discovery:jar:0.2:compile
[INFO] +- commons-el:commons-el:jar:1.0:compile
[INFO] +- commons-fileupload:commons-fileupload:jar:1.1:compile
[INFO] +- commons-httpclient:commons-httpclient:jar:3.0:compile
[INFO] |  \- junit:junit:jar:3.8.1:compile
[INFO] +- commons-logging:commons-logging:jar:1.0.4:compile
[INFO] +- commons-io:commons-io:jar:1.1:compile
[INFO] +- commons-jxpath:commons-jxpath:jar:1.2:compile
[INFO] |  \- javax.servlet:servlet-api:jar:2.2:compile
[INFO] +- commons-lang:commons-lang:jar:2.1:compile
[INFO] +- commons-validator:commons-validator:jar:1.1.3:compile
[INFO] +- xerces:xercesImpl:jar:2.8.0:compile
[INFO] +- net.sf.acegi-security:acegi-security:jar:0.8.2_patched:compile
[INFO] +- opensymphony:quartz:jar:1.6.0:compile
[INFO] +- net.sf.jooreports:jooconverter:jar:2.1.0:compile
[INFO] +- org.openoffice:juh:jar:2.1.0:compile
[INFO] +- org.openoffice:jurt:jar:2.1.0:compile
[INFO] +- org.openoffice:ridl:jar:2.1.0:compile
[INFO] +- org.openoffice:unoil:jar:2.1.0:compile
[INFO] +- freemarker:freemarker:jar:2.3.8:compile
[INFO] +- rhino:js:jar:1.6R4:compile
[INFO] +- org.springmodules:spring-modules-jbpm31:jar:0.8a:compile
[INFO] +- org.jbpm:jbpm-identity:jar:3.2:compile
[INFO] +- org.jbpm:jbpm-jpdl:jar:3.2_patched:compile
[INFO] +- hsqldb:hsqldb:jar:1.8.0.1:compile
[INFO] +- org.beanshell:bsh:jar:1.3.0:compile
[INFO] +- javax.jcr:jcr:jar:1.0:compile
[INFO] +- org.jibx:jibx-run:jar:rc0:compile
[INFO] +- org.jibx:jibx-bind:jar:rc0:compile
[INFO] +- xpp3:xpp3:jar:1.1.3.3:compile
[INFO] +- org.apache.lucene:lucene-core:jar:2.1.0:compile
[INFO] +- org.apache.lucene:lucene-analyzers:jar:2.1.0:compile
[INFO] +- org.apache.lucene:lucene-snowball:jar:2.1.0:compile
[INFO] +- cryptix-jce:cryptix-jce-provider:jar:20050328:compile
[INFO] +- mysql:mysql-connector-java:jar:5.0.5:compile
[INFO] +- javax.mail:mail:jar:1.3.2:compile
[INFO] |  \- javax.activation:activation:jar:1.0.2:compile
[INFO] +- org.apache:avalon-framework:jar:4.2.0:compile
[INFO] +- ant:ant:jar:1.6.5:compile
[INFO] +- poiSmiley Tongueoi:jar:2.5.1_patched:compile
[INFO] +- org.farng:jid3lib:jar:0.5:compile
[INFO] +- com.catcodeSmiley Surpriseddf-utils:jar:1.0:compile
[INFO] +- pdfboxSmiley Tonguedfbox:jar:0.7.3:compile
[INFO] |  \- org.fontbox:fontbox:jar:0.1.0:compile
[INFO] +- bouncycastle:bcprov-jdk15:jar:136:compile
[INFO] +- org.apache.poi:tm-extractors:jar:0.4_patched:compile
[INFO] +- xstream:xstream:jar:1.1.3:compile
[INFO] +- jaxen:jaxen:jar:1.1-beta-8:compile
[INFO] +- saxpath:saxpath:jar:1.0-FCS:compile
[INFO] +- aopalliance:aopalliance:jar:1.0:compile
[INFO] +- org.apache.axis:addressing:jar:1.0:compile
[INFO] +- axis:axis:jar:1.4:compile
[INFO] +- bcel:bcel:jar:5.1:compile
[INFO] +- bsf:bsf:jar:2.4.0:compile
[INFO] +- tomcat:catalina:jar:5.5.23:compile
[INFO] +- org.chiba:chiba:jar:1.3.0:compile
[INFO] +- commons-modeler:commons-modeler:jar:1.1:compile
[INFO] +- log4j:log4j:jar:1.2.8:compile
[INFO] +- org.sciencething:cpool:jar:1.0:compile
[INFO] +- org.codehaus.guessencoding:guessencoding:jar:1.0:compile
[INFO] +- com.vladium:hrtlib:jar:1.0:compile
[INFO] +- org.htmlparser:htmlparser:jar:1.6:compile
[INFO] |  \- com.sun:tools:jar:1.5.0:system
[INFO] +- com.ibm.icu:icu4j:jar:3.6.1:compile
[INFO] +- oroSmiley Surprisedro:jar:2.0.8:compile
[INFO] +- javax.xml:jaxrpc-api:jar:1.1:compile
[INFO] +- joda-time:joda-time:jar:1.2.1:compile
[INFO] +- org.json:json:jar:20070829:compile
[INFO] +- javax.servlet:jstl:jar:1.0:compile
[INFO] +- tomcat:naming-factory:jar:5.5.23:compile
[INFO] +- tomcat:naming-resources:jar:5.5.23:compile
[INFO] +- odmgSmiley Surpriseddmg:jar:3.0:compile
[INFO] +- xfireSmiley Surprisedpensaml:jar:1.0.1:compile
[INFO] +- javax.portletSmiley Tongueortlet-api:jar:1.0:compile
[INFO] +- xml-resolver:xml-resolver:jar:1.1:compile
[INFO] +- axis:axis-saaj:jar:1.2:compile
[INFO] +- taglibs:standard:jar:1.1.0:compile
[INFO] +- org.apache.myfaces.core:myfaces-api:jar:1.1.5:compile
[INFO] +- org.apache.myfaces.core:myfaces-impl:jar:1.1.5:compile
[INFO] +- de.schlichtherle:tlc:jar:1.24:compile
[INFO] +- tomcat:tomcat-coyote:jar:5.5.23:compile
[INFO] +- tomcat:tomcat-util:jar:5.5.23:compile
[INFO] +- de.schlichtherle.io:truezip:jar:5.1.2:compile
[INFO] +- wsdl4j:wsdl4j:jar:1.5.1:compile
[INFO] +- org.apache.santuario:xmlsec:jar:1.4.0:compile
[INFO] +- xalan:xalan:jar:2.7.0:compile
[INFO] \- jgroups:jgroups:jar:2.2.8:compile

Baptiste Meurant.

mindthegab
Champ in-the-making
Champ in-the-making
Hi Baptiste,
I have been working a lot with Maven and Alfresco, especially in enterprise environments where versioning, releasing and dependency management can be really important and tricky.
That's why I've put my efforts in releasing a maven2 archetype which can be used for building Alfresco extensions (and soon AMP, I hope) and managing the artifact in its whole lifecycle as m2 prescribes, e.g providing features like:

- Property filtering
- Rapid prototyping (common properties already available to the - junior - developer rather than Spring conf files)
- Releasing
- Documentation site
- LDAP configuration samples
- Local/remote deploy on tomcat/jboss with cargo
- jetty embedded run

Results are in the m2alfresco forge project here

http://forge.alfresco.com/projects/m2alfresco/,

and the documentation site with the zero conf command to run are here:

http://repository.sourcesense.com/maven2-sites/maven-alfresco-extension-archetype-1.0.0/.


Now the geek part Smiley Wink

I used almost your same convention, but you can have a look at the public repo with only community artifacts available (for obvious redistribution rules):
http://repository.sourcesense.com/maven2/alfresco/

Basically the war build overlays the extension to the alfresco WAR dependency (that brings already all the dependencies inside WEB-INF/lib, so no real pom.xml for it). All the other dependencies are directly set by the extension pom.xml with scope="provided" so that they don't get included again in the overlay phase.
I agree that a an Alfresco pom is the most correct approach but I want to have it released by Alfresco itself in order to have the support and all the stuff for my clients.

Maybe you can join the project in the forge and contribute all the (advanced Smiley Wink pom studies you've done here in the main pom of the archetype.

Every feedback would be really appreciated.

Ciao!

Gabriele


PS:
BTW, sources are still in Sourcesense private repos but I'm going to move to the forge soon. Sources are available anyways in the maven repo http://repository.sourcesense.com/maven2/com/sourcesense/alfresco/maven-alfresco-extension-archetype... and in the forge http://forge.alfresco.com/frs/?group_id=90.

mindthegab
Champ in-the-making
Champ in-the-making
BTW,
the project also supports ant, as I believe we shold not impose a technology for building while trying to adapt our technology to open source de facto (typically high) standards of development.

M2 offers much more features, but its learning curve may scare. Ant is provided for more low profile contexts and test drives (and I probably won't support it for soo long Smiley Wink

See http://forge.alfresco.com/docman/view.php/90/1644/README-ANT.txt for more info.


Ciao and HTH,
Gab

mindthegab
Champ in-the-making
Champ in-the-making
I know have an open issue on the Jira (and in the enterprise ACT), maybe you want to vote for it (I'd love to have the Alfresco POM):

https://issues.alfresco.com/jira/browse/ETHREEOH-1090

Ciao!