You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@roller.apache.org by Woonsan Ko <wo...@yahoo.com> on 2008/02/11 07:21:11 UTC

Maven2 build

Dear committers, community,

The current roller sources seems providing ant build file only.
Do you have any plan or schedule for providing maven2 build in roller?
If necessary, I'd like to work and contribute something for maven2 build.
What do you think?

Regards,

Woonsan




      ____________________________________________________________________________________
Never miss a thing.  Make Yahoo your home page. 
http://www.yahoo.com/r/hs

Re: Maven2 build

Posted by David Jencks <da...@yahoo.com>.
A start on a maven2 build is in http://opensource.atlassian.com/ 
projects/roller/browse/ROL-1537

While maven gets some getting used to for those who have only used  
ant my experience is that despite any problems the systematic nature  
of a properly partitioned maven built project makes life so much  
easier for everyone involved that there is no comparison and no going  
back.

thanks
david jencks

On Feb 10, 2008, at 10:21 PM, Woonsan Ko wrote:

> Dear committers, community,
>
> The current roller sources seems providing ant build file only.
> Do you have any plan or schedule for providing maven2 build in roller?
> If necessary, I'd like to work and contribute something for maven2  
> build.
> What do you think?
>
> Regards,
>
> Woonsan
>
>
>
>
>        
> ______________________________________________________________________ 
> ______________
> Never miss a thing.  Make Yahoo your home page.
> http://www.yahoo.com/r/hs


Re: Maven2 build

Posted by srinivasa marreddy <sr...@gmail.com>.
  Please keep the Ant build files incase if you are going to use Maven for
build process. Most of the Java developers dont know much about Maven as
compared to Ant and i think the current build process is fine.

-Srini Marreddy



On 2/11/08, Dave <sn...@gmail.com> wrote:
>
> On Feb 11, 2008 1:21 AM, Woonsan Ko <wo...@yahoo.com> wrote:
> > Dear committers, community,
> >
> > The current roller sources seems providing ant build file only.
> > Do you have any plan or schedule for providing maven2 build in roller?
> > If necessary, I'd like to work and contribute something for maven2
> build.
> > What do you think?
>
> Two thoughts:
> The current build process works fine.
> I don't know Maven nor do I have a desire to learn it.
>
> What specific problems will moving to Maven solve for Roller?
>
> - Dave
>



-- 
-Srini Marreddy

Re: Maven2 build

Posted by Matt Raible <mr...@gmail.com>.
The biggest thing Maven brings to the table for me is that I can run  
"mvn jetty:run" and modify source code w/o restarting/redeploying  
each time. I'd like to see it supported, but since I rarely  
contribute to Roller these days, I don't believe I have a strong  
voice on the subject.

Matt

On Feb 11, 2008, at 7:11 AM, Dave wrote:

> On Feb 11, 2008 1:21 AM, Woonsan Ko <wo...@yahoo.com> wrote:
>> Dear committers, community,
>>
>> The current roller sources seems providing ant build file only.
>> Do you have any plan or schedule for providing maven2 build in  
>> roller?
>> If necessary, I'd like to work and contribute something for maven2  
>> build.
>> What do you think?
>
> Two thoughts:
> The current build process works fine.
> I don't know Maven nor do I have a desire to learn it.
>
> What specific problems will moving to Maven solve for Roller?
>
> - Dave


Re: Maven2 build

Posted by David Jencks <da...@yahoo.com>.
On Feb 12, 2008, at 9:30 AM, Dave wrote:

> On Feb 12, 2008 11:41 AM, David Jencks <da...@yahoo.com> wrote:
>> I think I'm noticing something here.  There are several people who
>> are not (yet) major contributors to roller asking for a maven build
>> since they find the current ant build a major impediment to
>> understanding the project and working on it, and there are several
>> people who are thoroughly familiar with the current ant build who are
>> saying they are familiar with the current ant build and it works.
>> Two of the people who want maven have offered to create the maven
>> build (and one has done so within the limits of not moving anything).
>>
>> This goes along with my general observation that ant is good if you
>> want to keep your project private and unrelated to other software or
>> new contributors and maven is good if you want your project to have
>> good relations with other projects, both as a consumer of
>> dependencies such as spec jars and as a supplier of parts such as
>> roller to the geronimo roller plugin.
>>
>> One of the biggest reasons I haven't found the time to propose a
>> patch for the new security stuff (which  I consider seriously flawed)
>> is the pain of trying to understand how parts of the project are
>> interrelated.  This is just not a problem with a reasonably well laid
>> out maven project.
>
> Maybe so and maybe not, but if you think the reason I don't see value
> in Maven is because I want to keep Roller a "private" project and have
> bad relations with other projects then you are wrong. I must say, I
> find that insinuation a little insulting.

I could certainly have put that better.  I didn't mean to imply  
anything about your intentions and not necessarily anything about  
roller in particular.  However I've gotten the impression from the  
projects I follow that projects using ant tend to have a less open  
and welcoming style and tend to have less clear relationships with  
other projects.  I haven't followed roller enough to know if this  
applies to roller in particular.
>
> Again, I ask: what *specific problems* that we are now facing with
> Roller can be solved by moving the build process to Maven?

Well, I haven't been willing to invest the hours necessary to really  
understand roller's structure enough to identify intrinsic problems  
but here are  a few that I've encountered so far:

How do I answer these questions:

What external projects does roller depend on?  How?  Where do the  
artifacts come from? What license are they under?  Are there newer  
versions of any of them?
What's the structure of the roller application?  What are the  
artifacts it produces and how are they related?
Where are the configuration files for a web app?

As I said before, not having quick enough answers for questions  
including these has kept me personally from working on roller.   
Obviously anyone who works on roller much will know the answers to  
these questions or where the answers are.  For me, they are a  
significant barrier.

thanks
david jencks
>
> - Dave


Re: Maven2 build

Posted by Phillip Rhodes <mi...@cpphacker.co.uk>.
Matthew Montgomery wrote:
> 
> Not a Maven fan myself, but I wonder if really the core issue being 
> referred to is a predictable project structure? Getting to know the ins 
> and outs of Roller development does mean learning about the build 
> structure and how things are laid out. Perhaps, to point is a Maven 
> build would be more "pick up and code?"

The "predictable project structure" part is one of the few legitimate 
advantages I see to Maven ( I'm not even counting transitive dependency
management since you can do that with Ant+Ivy).  If you see a project
is using Maven, you can make certain assumptions about how the source
is laid out, etc.

BUT... and maybe it's just me..  I just don't see
that being a big deal.  I was able to grab the Roller source and get it
building and figure out how to work on stuff in Roller, with fairly
minimal effort.  Not, it wasn't "no effort" but it was a one time
effort of maybe a couple of hours, if that.  I mean, c'mon, most
projects (at least the ones I've encountered) use a batch of fairly
common idioms and names anyway.  And to the extent that some don't, it's
usually fairly easy to mentally translate things.

eg, if you do

$> ant -projecthelp

and see targets like init, clean, compile, package
or clean, build, build-all, package
etc.

it's - IMO - relatively easy to figure out what you need to do to
build the project.

That said, the one thing that is nice is when the target dependencies 
are all setup so that you can just do $> ant clean $FOO
where FOO means "the ultimate target that creates the final artifacts"
and all the in-between steps "just happen".  As opposed to having
to explicitly do $> ant init gen-code compile package
or something like that.


TTYL,

-- 
Phillip Rhodes
Chief Architect - OpenQabal
https://openqabal.dev.java.net

Re: Maven2 build

Posted by Matthew Montgomery <Ma...@Sun.COM>.
On Feb 12, 2008, at 12:21 PM, Allen Gilliland wrote:

> I would have to agree with Dave here, Maven vs. Ant has nothing to  
> do with wanting to get people to be involved with the project.  I've  
> worked on Roller quite a bit and never felt that there was anything  
> particularly difficult about the build process using purely ant,  
> especially not something that would magically bring in new  
> developers if we had Maven.
>
> Personally, I have never been a Maven fan and have never seen it  
> make any significant improvement in a build environment that I have  
> worked with.  I would echo Phillip's opinion that Maven is "over- 
> engineered" and has never really proved itself to me.
>
> -- Allen

Not a Maven fan myself, but I wonder if really the core issue being  
referred to is a predictable project structure? Getting to know the  
ins and outs of Roller development does mean learning about the build  
structure and how things are laid out. Perhaps, to point is a Maven  
build would be more "pick up and code?" If this is part/all of the  
issue, then I wonder if we need clearer documentation or a cleanup  
pass on the exiting Ant build.

--
Matthew Montgomery
.Sun Engineering
Sun Microsystems, Inc.




Re: Maven2 build

Posted by Allen Gilliland <Al...@Sun.COM>.
I would have to agree with Dave here, Maven vs. Ant has nothing to do 
with wanting to get people to be involved with the project.  I've worked 
on Roller quite a bit and never felt that there was anything 
particularly difficult about the build process using purely ant, 
especially not something that would magically bring in new developers if 
we had Maven.

Personally, I have never been a Maven fan and have never seen it make 
any significant improvement in a build environment that I have worked 
with.  I would echo Phillip's opinion that Maven is "over-engineered" 
and has never really proved itself to me.

-- Allen


Dave wrote:
> On Feb 12, 2008 11:41 AM, David Jencks <da...@yahoo.com> wrote:
>> I think I'm noticing something here.  There are several people who
>> are not (yet) major contributors to roller asking for a maven build
>> since they find the current ant build a major impediment to
>> understanding the project and working on it, and there are several
>> people who are thoroughly familiar with the current ant build who are
>> saying they are familiar with the current ant build and it works.
>> Two of the people who want maven have offered to create the maven
>> build (and one has done so within the limits of not moving anything).
>>
>> This goes along with my general observation that ant is good if you
>> want to keep your project private and unrelated to other software or
>> new contributors and maven is good if you want your project to have
>> good relations with other projects, both as a consumer of
>> dependencies such as spec jars and as a supplier of parts such as
>> roller to the geronimo roller plugin.
>>
>> One of the biggest reasons I haven't found the time to propose a
>> patch for the new security stuff (which  I consider seriously flawed)
>> is the pain of trying to understand how parts of the project are
>> interrelated.  This is just not a problem with a reasonably well laid
>> out maven project.
> 
> Maybe so and maybe not, but if you think the reason I don't see value
> in Maven is because I want to keep Roller a "private" project and have
> bad relations with other projects then you are wrong. I must say, I
> find that insinuation a little insulting.
> 
> Again, I ask: what *specific problems* that we are now facing with
> Roller can be solved by moving the build process to Maven?
> 
> - Dave

Re: Maven2 build

Posted by Dave <sn...@gmail.com>.
On Feb 12, 2008 11:41 AM, David Jencks <da...@yahoo.com> wrote:
> I think I'm noticing something here.  There are several people who
> are not (yet) major contributors to roller asking for a maven build
> since they find the current ant build a major impediment to
> understanding the project and working on it, and there are several
> people who are thoroughly familiar with the current ant build who are
> saying they are familiar with the current ant build and it works.
> Two of the people who want maven have offered to create the maven
> build (and one has done so within the limits of not moving anything).
>
> This goes along with my general observation that ant is good if you
> want to keep your project private and unrelated to other software or
> new contributors and maven is good if you want your project to have
> good relations with other projects, both as a consumer of
> dependencies such as spec jars and as a supplier of parts such as
> roller to the geronimo roller plugin.
>
> One of the biggest reasons I haven't found the time to propose a
> patch for the new security stuff (which  I consider seriously flawed)
> is the pain of trying to understand how parts of the project are
> interrelated.  This is just not a problem with a reasonably well laid
> out maven project.

Maybe so and maybe not, but if you think the reason I don't see value
in Maven is because I want to keep Roller a "private" project and have
bad relations with other projects then you are wrong. I must say, I
find that insinuation a little insulting.

Again, I ask: what *specific problems* that we are now facing with
Roller can be solved by moving the build process to Maven?

- Dave

Re: Maven2 build

Posted by David Jencks <da...@yahoo.com>.
I think I'm noticing something here.  There are several people who  
are not (yet) major contributors to roller asking for a maven build  
since they find the current ant build a major impediment to  
understanding the project and working on it, and there are several  
people who are thoroughly familiar with the current ant build who are  
saying they are familiar with the current ant build and it works.   
Two of the people who want maven have offered to create the maven  
build (and one has done so within the limits of not moving anything).

This goes along with my general observation that ant is good if you  
want to keep your project private and unrelated to other software or  
new contributors and maven is good if you want your project to have  
good relations with other projects, both as a consumer of  
dependencies such as spec jars and as a supplier of parts such as  
roller to the geronimo roller plugin.

One of the biggest reasons I haven't found the time to propose a  
patch for the new security stuff (which  I consider seriously flawed)  
is the pain of trying to understand how parts of the project are  
interrelated.  This is just not a problem with a reasonably well laid  
out maven project.

thanks
david jencks

On Feb 11, 2008, at 9:03 PM, Phillip Rhodes wrote:

> Woonsan Ko wrote:
>> Dear Dave,
>
>>  - Making the build process easy
>>  - Providing a uniform build system
>>  - Providing quality project information
>>  - Providing guidelines for best practices development
>>  - Allowing transparent migration to new features
>
> Most of that sounds like marketing gobbledygook to me.  Nice sounding
> words, but no real substance.  How is M2 easier than Ant exactly?  Is
> the Maven build more "uniform" than the Ant build? Only if you mean
> uniform across different projects, but ya know, that just doesn't
> strike me as a big deal.  Most projects use a roughly common
> set of target names and it's usually pretty easy to figure out
> what means what when beginning with a new project, in my experience.
>
> OTOH, Maven is over-engineered to the point that doing something
> as simple as changing the compiler source level means pasting
> a huge blob of XML into a pom.xml file:
>
> <http://maven.apache.org/plugins/maven-compiler-plugin/howto.html>
>
> Whereas with Ant it's as simple as changing a line like this:
>
> <javac source="1.4" ... />
>
> to
>
> <javac source="1.6" ... />
>
> just to use one example.
>
> All of that said, we are actually using a slightly different build
> system when we build Roller as part of OpenQabal.  But it's not
> Maven, it's just our own common Ant build file.  We think it gives
> us most of the advantages of Maven while leaving out
> the stuff we find to be fairly superfluous (like the output
> of maven site:site or whatever it is) and keeping the nice
> simple ant way of doing things.
>
> The main advantages we find with using Ivy and this build  
> environment is
> that it does make managing dependencies easier (same as Maven in this
> regard) and it lets us manage things in a project / sub-project
> hierarchy (again, same as Maven).  So we can, for example publish  
> Roller
> artifacts (like the war file(s)) to a repository where they can  
> then be
> pulled in as declared dependencies of our "main" project for
> inclusion in the EAR.  But all of this makes sense for OpenQabal, it
> doesn't really mean anything for Roller per-se, or I would have
> considered proposing to Dave to adopt this environment for Roller.   
> But
> as he says, the existing system works, so why mess with it? :-)
>
>
>
> TTYL,
>
> -- 
> Phillip Rhodes
> Chief Architect - OpenQabal
> https://openqabal.dev.java.net



Re: Maven2 build

Posted by Phillip Rhodes <mi...@cpphacker.co.uk>.
Woonsan Ko wrote:
> Dear Dave,

>  - Making the build process easy
>  - Providing a uniform build system
>  - Providing quality project information
>  - Providing guidelines for best practices development
>  - Allowing transparent migration to new features

Most of that sounds like marketing gobbledygook to me.  Nice sounding
words, but no real substance.  How is M2 easier than Ant exactly?  Is
the Maven build more "uniform" than the Ant build? Only if you mean
uniform across different projects, but ya know, that just doesn't
strike me as a big deal.  Most projects use a roughly common
set of target names and it's usually pretty easy to figure out
what means what when beginning with a new project, in my experience.

OTOH, Maven is over-engineered to the point that doing something
as simple as changing the compiler source level means pasting
a huge blob of XML into a pom.xml file:

<http://maven.apache.org/plugins/maven-compiler-plugin/howto.html>

Whereas with Ant it's as simple as changing a line like this:

<javac source="1.4" ... />

to

<javac source="1.6" ... />

just to use one example.

All of that said, we are actually using a slightly different build
system when we build Roller as part of OpenQabal.  But it's not
Maven, it's just our own common Ant build file.  We think it gives
us most of the advantages of Maven while leaving out
the stuff we find to be fairly superfluous (like the output
of maven site:site or whatever it is) and keeping the nice
simple ant way of doing things.

The main advantages we find with using Ivy and this build environment is
that it does make managing dependencies easier (same as Maven in this
regard) and it lets us manage things in a project / sub-project
hierarchy (again, same as Maven).  So we can, for example publish Roller
artifacts (like the war file(s)) to a repository where they can then be
pulled in as declared dependencies of our "main" project for
inclusion in the EAR.  But all of this makes sense for OpenQabal, it
doesn't really mean anything for Roller per-se, or I would have
considered proposing to Dave to adopt this environment for Roller.  But
as he says, the existing system works, so why mess with it? :-)



TTYL,

-- 
Phillip Rhodes
Chief Architect - OpenQabal
https://openqabal.dev.java.net

Re: Maven2 build

Posted by Jeffrey Blattman <je...@gmail.com>.
there's a plugin for ant called ivy that handled dependencies ala maven.

http://ant.apache.org/ivy/

On Feb 11, 2008, at 11:30 PM, Matthias Schmidt wrote:

> Woonsan,
>
>  I totally agree with you. And I have to add one advantage of Maven:
>
> - Solves project dependencies. For example, Maven would download the
> JavaMail JARs and add them to the project. I think just today,  
> there were
> questions regarding mail.jar and activation.jar
>
>  Using Maven build files is *a lot* easier than Ant build files.  
> You see
> from questions to this list that using ant is not trivial.
>
>  Regards,
>
> Matt
>
>
>
>> ----- Ursprüngliche Nachricht -----
>> Von: Woonsan Ko
>> Gesendet: 01:45 Uhr
>> An: dev@roller.apache.org
>> Betreff: Re: Maven2 build
>>
>> Dear Dave,
>>
>> IMHO, in general, the followings could be benefits for Roller
>> (http://maven.apache.org/what-is-maven.html):
>> - Making the build process easy
>> - Providing a uniform build system
>> - Providing quality project information
>> - Providing guidelines for best practices development
>> - Allowing transparent migration to new features
>>
>> For example, the Struts2 homepage (http://struts.apache.org/2.x/)
>> provides more quality project
>> information on the project information menu and project report  
>> menu on
>> the left side. (The site is
>> built from `mvn site' command from the source.)
>> There could be some debates on each benefit item above, but I'm  
>> feeling
>> that Maven2 could be a
>> good build option, so it would be better to provide both Ant and  
>> Maven2
>> build for the community.
>>
>> Actually, I do not have strong voice on this. (I have contributed a
>> Korean resource translation
>> only until now.) I think Maven2 will benefit to Roller project and  
>> I'd
>> like to help you committers
>> on this issue.
>>
>> Regards,
>>
>> Woonsan
>>
>>
>> --- Dave <sn...@gmail.com> wrote:
>>
>>> On Feb 11, 2008 1:21 AM, Woonsan Ko <wo...@yahoo.com> wrote:
>>>> Dear committers, community,
>>>>
>>>> The current roller sources seems providing ant build file only.
>>>> Do you have any plan or schedule for providing maven2 build in
>> roller?
>>>> If necessary, I'd like to work and contribute something for maven2
>> build.
>>>> What do you think?
>>>
>>> Two thoughts:
>>> The current build process works fine.
>>> I don't know Maven nor do I have a desire to learn it.
>>>
>>> What specific problems will moving to Maven solve for Roller?
>>>
>>> - Dave
>>>
>>
>>
>>
>>
>> _____________________________________________________________________ 
>> _______________
>> Looking for last minute shopping deals?
>> Find them fast with Yahoo! Search.
>> http://tools.search.yahoo.com/newsearch/category.php? 
>> category=shopping
>>
>
>
> -- 
> Psssst! Schon vom neuen GMX MultiMessenger gehört?
> Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger


Re: Re: Maven2 build

Posted by Matthias Schmidt <ma...@gmx.de>.
Woonsan,

 I totally agree with you. And I have to add one advantage of Maven:

- Solves project dependencies. For example, Maven would download the 
JavaMail JARs and add them to the project. I think just today, there were 
questions regarding mail.jar and activation.jar

 Using Maven build files is *a lot* easier than Ant build files. You see 
from questions to this list that using ant is not trivial.

 Regards,

Matt



> ----- Ursprüngliche Nachricht -----
> Von: Woonsan Ko
> Gesendet: 01:45 Uhr
> An: dev@roller.apache.org
> Betreff: Re: Maven2 build
> 
> Dear Dave,
> 
> IMHO, in general, the followings could be benefits for Roller
> (http://maven.apache.org/what-is-maven.html):
> - Making the build process easy
> - Providing a uniform build system
> - Providing quality project information
> - Providing guidelines for best practices development
> - Allowing transparent migration to new features
> 
> For example, the Struts2 homepage (http://struts.apache.org/2.x/) 
> provides more quality project
> information on the project information menu and project report menu on 
> the left side. (The site is
> built from `mvn site' command from the source.)
> There could be some debates on each benefit item above, but I'm feeling 
> that Maven2 could be a
> good build option, so it would be better to provide both Ant and Maven2 
> build for the community.
> 
> Actually, I do not have strong voice on this. (I have contributed a 
> Korean resource translation
> only until now.) I think Maven2 will benefit to Roller project and I'd 
> like to help you committers
> on this issue.
> 
> Regards,
> 
> Woonsan
> 
> 
> --- Dave <sn...@gmail.com> wrote:
> 
> > On Feb 11, 2008 1:21 AM, Woonsan Ko <wo...@yahoo.com> wrote:
> > > Dear committers, community,
> > >
> > > The current roller sources seems providing ant build file only.
> > > Do you have any plan or schedule for providing maven2 build in 
> roller?
> > > If necessary, I'd like to work and contribute something for maven2 
> build.
> > > What do you think?
> > 
> > Two thoughts:
> > The current build process works fine.
> > I don't know Maven nor do I have a desire to learn it.
> > 
> > What specific problems will moving to Maven solve for Roller?
> > 
> > - Dave
> > 
> 
> 
> 
> 
> ____________________________________________________________________________________
> Looking for last minute shopping deals? 
> Find them fast with Yahoo! Search. 
> http://tools.search.yahoo.com/newsearch/category.php?category=shopping
> 

 
-- 
Psssst! Schon vom neuen GMX MultiMessenger gehört?
Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger

Re: Maven2 build

Posted by Woonsan Ko <wo...@yahoo.com>.
Dear Dave,

IMHO, in general, the followings could be benefits for Roller
(http://maven.apache.org/what-is-maven.html):
 - Making the build process easy
 - Providing a uniform build system
 - Providing quality project information
 - Providing guidelines for best practices development
 - Allowing transparent migration to new features

For example, the Struts2 homepage (http://struts.apache.org/2.x/) provides more quality project
information on the project information menu and project report menu on the left side. (The site is
built from `mvn site' command from the source.)
There could be some debates on each benefit item above, but I'm feeling that Maven2 could be a
good build option, so it would be better to provide both Ant and Maven2 build for the community.

Actually, I do not have strong voice on this. (I have contributed a Korean resource translation
only until now.) I think Maven2 will benefit to Roller project and I'd like to help you committers
on this issue.

Regards,

Woonsan


--- Dave <sn...@gmail.com> wrote:

> On Feb 11, 2008 1:21 AM, Woonsan Ko <wo...@yahoo.com> wrote:
> > Dear committers, community,
> >
> > The current roller sources seems providing ant build file only.
> > Do you have any plan or schedule for providing maven2 build in roller?
> > If necessary, I'd like to work and contribute something for maven2 build.
> > What do you think?
> 
> Two thoughts:
> The current build process works fine.
> I don't know Maven nor do I have a desire to learn it.
> 
> What specific problems will moving to Maven solve for Roller?
> 
> - Dave
> 



      ____________________________________________________________________________________
Looking for last minute shopping deals?  
Find them fast with Yahoo! Search.  http://tools.search.yahoo.com/newsearch/category.php?category=shopping

Re: Maven2 build

Posted by Dave <sn...@gmail.com>.
On Feb 11, 2008 1:21 AM, Woonsan Ko <wo...@yahoo.com> wrote:
> Dear committers, community,
>
> The current roller sources seems providing ant build file only.
> Do you have any plan or schedule for providing maven2 build in roller?
> If necessary, I'd like to work and contribute something for maven2 build.
> What do you think?

Two thoughts:
The current build process works fine.
I don't know Maven nor do I have a desire to learn it.

What specific problems will moving to Maven solve for Roller?

- Dave