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

gavinc
Champ in-the-making
Champ in-the-making
Yes, you're right we should use a naming convention similar to Maven, we have on some of the JARs but not all  :wink:

I have raised a JIRA task to address this: http://www.alfresco.org/jira/browse/BDE-26

In the meantime, a majority of the time you can look at the manifest in the JAR file to find the version.

For those you highlighted in red the versions are:

activation.jar - 1.2.0
aopalliance - 1.0
axis.jar - 1.2.1
bcel - 5.1

yujin_kim
Champ in-the-making
Champ in-the-making
Hi

We just started the process of integrating alfresco as our content store recently and had run into depedency management issues, and I am wondering if there is any plan to actually use maven2 as a part of the build?  We have developed a skeleton maven build descriptor for alfreso we are using internally to ease our integration process and would like to share it with you.

nis
Champ in-the-making
Champ in-the-making
We're working in the same way. I have built a pom.xml file (maven 2) with 50+ dependencies for the moment.

gavinc
Champ in-the-making
Champ in-the-making
We don't currently have any plans to develop a maven2 build but that doesnn't mean we won't Smiley Happy

Out of interest how have you found maven2? Is it better/easier/quicker than maven 1.x?

We would certainly be interested in anything you have to offer in terms of maven build scripts, it may get integrated sooner rather than later then  :wink:

yujin_kim
Champ in-the-making
Champ in-the-making
Maven2 is a completely different environment than maven 1.x.
Maven team claims maven2 builds faster than ant, and while I am not 100% convinced, I wouldn't shocked if it indeed is the case.

Our project contains (currently) 7 sub-projects (one of which is alfresco build for depedency management).  When we were on maven 1.1 (no alfresco at that time), the build could take as long as 5 minutes when it was running online.  If running it in offline mode, it would take about 3 minute.  The build time included some basic junit tests.

With maven 2.x, the whole build, as well as building war/jar etc takes about minute and half.  I could tweak the build setting if i don't need to run unit tests or build war, etc, and i can cut it down to 30 secs or so.  Big improvement I should say.

Considering alfresco contains A LOT OF dependencies, and I don't mean to be too presumptious, but quite frankly I would suspect some of the dependencis, you guys don't even know which version you are using. (I had to track down odf_utils and compared the file size to find which version you were using).  Plus if alfresco is going to pitch embeded deploy model, I think it makes a very good sense that you guys can say which depedencies you are using etc and make sure you are not breaching any license issue. For example, currently alfresco is being distributed along with some of the java specs such as java mail, activation, which from my understanding, is not allowed.  So having a good snapshot of which dependencies you are using, it will help you guys I think (and in turn vendors like us).

Pros:
- Transitive depdency management (but this could be a con too)
- More structurally sound multi-project support
- More controlled management of plugins (means it lacks some plugins but thigns are more stable).
- Very good support for eclipse.

Cons:
- If the depedencies are not found in the maven central repository, you have to maintain your own repository as well.
- Unless you learn maven well, the build time could still be slow. (You need to learn the various flags as well as understanding of mirror repository sites etc to optimize your build).
- Syncing up maven build with eclipse build can still be tricky (but we are now 99% integrated with maven/eclipse/eclipse webtools currently).
- Maven 2 is a complete rewrite.  The concept is same as 1.1, but you will need to learn almost from the scratch (but it's that big of a deal either).

Where can I post our maven build files?

We don't currently have any plans to develop a maven2 build but that doesnn't mean we won't Smiley Happy

Out of interest how have you found maven2? Is it better/easier/quicker than maven 1.x?

We would certainly be interested in anything you have to offer in terms of maven build scripts, it may get integrated sooner rather than later then  :wink:

gavinc
Champ in-the-making
Champ in-the-making
Very interesting feedback on maven, thanks very much.

You can post the maven build files as a contribution. Go to JIRA (http://www.alfresco.org/jira) and click on the Build/Dev Environment project, then click "Create New Issue". Choose "Contribution" as the issue type and you can then post files to the new issue.

yujin_kim
Champ in-the-making
Champ in-the-making
Cool.  I'll do that in a few.  Just a quick note.  Looking at the tasks listed you have listed under jira, I think a fair amount of those tasks will be very easily accomplished in maven (clover, javadoc, version #, version naming convention, etc.)

Very interesting feedback on maven, thanks very much.

You can post the maven build files as a contribution. Go to JIRA (http://www.alfresco.org/jira) and click on the Build/Dev Environment project, then click "Create New Issue". Choose "Contribution" as the issue type and you can then post files to the new issue.

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

btorfs
Champ in-the-making
Champ in-the-making
Hello;
I managed to build alfresco using maven2.
–> the alfresco.war file this is
(not with the standard jibx plugin cause this fails over the binding file being not valid so I used an ant task for this)
If anyone is interested…