dev@glassfish.java.net

Re: Glassfish Build Process Feedback/Enhancements

From: Dinesh Patil <dinesh.patil_at_Sun.COM>
Date: Fri, 27 Jan 2006 00:57:21 -0800

Matthew L Daniel wrote:

>>We are starting the discussion on current GlassFish build framework,
>>issues faced around this and bring enhancements to the workspace. Please
>>share your experience on GlassFish build framework.
>>
>>
>
>As I have mentioned before, I think it's great that Glassfish started
>with Maven instead of an Ant or (worse) Makefile based build system.
>
>However, (also as I have mentioned before) I believe that the way
>Glassfish is using Maven is suboptimal. The boundary between Maven and
>Ant causes a lot of friction, in my experience. The build doesn't behave
>like a Maven build because it calls out to Ant almost immediately. The
>build doesn't behave like an Ant build because the invocation is buried
>under the Maven covers. That friction makes the build rough on both
>camps.
>
>
>It is also non-standard the way the Glassfish build unpacks and copies
>around external jars as part of the build. I keep meaning to take some
>metrics on the build, but it _feels_ like the build spends 80% of its
>time updating the [15 MEG] appserv-rt.jar. That just can't be healthy.
>
>
Yes as I said in another reply, we have a discussion on this and will
address this soon.

>I believe strongly that Maven2 (aka M2) should be involved in the
>discussions moving forward. Trying to "sort out" the M1 build is likely
>to result in more Jelly scripting, which is what M2 is trying to avoid.
>
>
Yes currently we are evaluating with, and will integrate the pom.xml on
a separate branch, so all users can contribute to this.

Markus sent another email with some options, following are other 2
options in addition to first one as m2 migration.

2) If we're not using all/some of the Maven 2.0 features, like
install/docs/build/jars etc, Ant is an easier/cleaner solution. This can
easily be driven by Netbeans/Eclipse without any plug in to download.

Use the Maven 2.0 Ant task, which can be downloaded from:
http://www.apache.org/dyn/closer.cgi/maven/binaries/maven-artifact-ant-2.0.2-dep.jar

3) Migrate from maven 1.0.2 to maven 1.1. Continue either with the
current mixed maven/ant approach , or replace ant by using maven.

>Also, I have formed a strong opinion about the need for the build to be
>SCM aware. I can think of two or three build breakages caused by an
>incomplete (read: missing files) commit.
>
>I have lots more to say about the SCM provider used by Glassfish, but
>I'll leave that for another discussion.
>
>Finally, I have heard the explanation of why the build system is the
>way it is, so I hope no one takes this as incendiary or anything other
>than one person's observation as a (more or less) outsider.
>
>
thanks for the creative feedback.
-Dinesh

> -- /v\atthew
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>
>
>