It's a console app. You call it and it builds "stuff", much like Ant does. I don't really know much more than that right now, though, so no complicated questions please.:)
(Oh, and that "screenshot" is messed up, I had to add a "." to make sure it stayed indented properly, Slashdot messed it up otherwise.)
Erm... so you didn't really read the page huh? Maven is a project automation tool, not a build automation tool. You configure it to do (continuous) builds, but also to do documention, collaboration etc.
I guess I shouldn't be too surprised, I wasn't on the bandwagon either until I actually used it for a project.
Maven is a command-line tool. The screenshots are not that impressive...:)
If you know Ant (Java much improved version of make), Maven is like Ant on steroid. Maven handles intra/inter-project dependencies, project site documentation generation, unit testing, code coverage, packaging, deployment, and there's even a plugin to test whether your code conform to the coding standard.
One of the major strength of Maven is that it manages the various jar (library) dependencies in a seemless way. Multiple subprojects do not need to duplicate the jars that they depend on. You can even throw multiple subprojects into a "reactor" and it'll build them in the correct order based on their dependency graph.
It's sad that it's for Java only. I wish there's something like Maven for C/C++, or even C#, but so far I don't think I find anything yet.
Great. This is just what the world needs. Ant has something like 100 different tags with like 10 attributes to each of those. Creating large projects with Ant becomes a huge task of managing xml errors while trying to get the damn thing to build something. Now lets add some complication! People will love this. Eat it right up!
Someone really needs to build a better make. Make a better make. Whatever. If your one of those wacky open source coders who dont have a proj
I use qmake [trolltech.com] and don't ever plan to go back:
TEMPLATE=app TARGET=foobar HEADERS=foobar.h SOU RCES=foobar.cpp
That's all it takes. Run qmake on this and then make. And it is platform-independent too, meaning that it will use whatever *make you have (gmake, nmake etc.) on any supported OS (the list is long enough.)
I had a look at Maven's project description file, and I definitely won't use it any time soon even if I get a Java project to work on. It will cost me and other developers way too much time to learn
It will cost me and other developers way too much time to learn it.
From my experience, it does take a couple days to get up and running with Maven. Say ~10 man hours. This time is insignificant compared with the benefits that it bestows.
Remember, a good programer knows when not to program, and plan, improve processes instead. Also, Maven really only needs to be touches by one person, the project lead. The rest only need to know a couple commands and spend a couple hours to learn how to document stu
Plan 9 provides mk [bell-labs.com], as a replacement for make. There are unix ports [swtch.com] available. Since this isn't really a `better make' story, I'll not post more, but the papers [bell-labs.com] and manual pages [bell-labs.com] (yes, actually used in Plan 9) are often interesting reading regardless.
by Anonymous Coward writes:
on Friday July 16, 2004 @05:06PM (#9721556)
Sadly, the headline also left out the rather key information that this tool is for Java projects only.
I was quite looking forward to a revolutionary project management tool... alas, this one is yet another myopic product of the "Java is the whole universe" generation.
Java is great... but there is a larger world out there you know.
Is it really Java only? It's written in Java yes, it supports many common Java paradigms - would it not be fairly simple to use doxygen rather than javadoc, gcc rather than javac, nunit rather than junit etc etc.
Ant allows this, and I understand Maven to be an evolution of build tools, so I don't see why it should not be project-development-technology-agnostic.
It's technically possible but part of the point of the thing is that you don't have to spend forever writing build scripts to get going. So once there's a set of users writing plugins with better support for (e.g.) C# and C++, sure it'll be agnostic.
Right now it's effectively a Java tool since most of the plugins are for Java (jar, javac, javadoc, junit, etc).
Not true. It uses ant, ant can do anything (think of it as a replacement for make). People here build C, C++ and a bunch of other stuff using ant. With the correct modules you wrap all that up (with your Java components) into one nicely managed project.
Sure it's written _in_ Java, but it's not just _for_ Java (but naturally, the user community is heavily biased in that direction).
What, exactly, do maven or ant buy which make does not provide? They are written in a slow, ugly, unpleasant language, yes. They use XML instead of decent flat text, yes. They lack the great library of tools which have grown up around make, yes. Why would I want this, again? I will grant that make's use of <tab> is an abomination, but other than that it's a damned good tool which does a damned good job.
Idiot Java/XML heads constantly re-inventing the wheel.
Idiot luddites refusing to see progress when it smacks them in the face.
What, then, is the progress? As I asked in my post, 'what, exactly, do maven or ant buy which make does not provide?' As I noted, they are written in an ugly language; they use an ugly syntax (XML has all the bad points of S-expressions and few of the good); they do not work with auto*. I did note that make has a bad point.
I also looked at a few sites trying to get an answer. As far as I can see, switching to maven or ant buys m
Another downside to make: People often start with the false assumption that Makefiles are automatically cross-platform, and then find out that they aren't.
Also, make/automake/autoconf/autoheader/... can be quite complicated and confusing. Whereas ant (and presumably maven) are pretty simple by comparison.
I was hoping it was a project management system, not a programming project management tool, not a java thing. Nothing to see here for me; I'll move along now.
Sadly, the headline also left out the rather key information that this tool is for Java projects only.
Actually, no, it's not. We use it to build C code, install and configure Oracle and DB2 databases, automate some OpenSSL stuff, put together PHP sites, and rsync stuff all over the place. We also use it for managing our main Java app as well.
So I am not the only person who had bad experiences with Plone? Good to know it was not my own dumbness alone that led me to the conclusion Zope would be a good idea if the Zope people stopped having revolutionary ideas and sat down to document and clean up what they already have...:)
We just lost half a year trying to build a scalable Intranet site with Plone and Zope, for an organisation which really needs that scalability. Never again.
We even had some of Europe's best Plone/Zope experts on the project, and they came to the conclusion that it's not really possible (outside some very narrow fields where you can just use Squid or other similar caching to create scalability from where there is none) to create scalable web applications using those tools.
Link to project (Score:5, Informative)
http://maven.apache.org/ [apache.org]
Re:Link to project (Score:2)
Aha. (Score:1, Troll)
Re:Link to project (Score:2, Interesting)
So I have to install it on one of my servers just so I can see what the interface looks like? Give me a break...
Re:Link to project (Score:4, Informative)
Screenshot (Score:5, Funny)
.__ __
| \/ |__ _Apache__ ___
| |\/| / _` \ V / -_) ' \ ~ intelligent projects ~
|_| |_\__,_|\_/\___|_||_| v. 1.0
BUILD SUCCESSFUL
Total time: 1 seconds
Finished at: Fri Jul 16 17:34:27 EDT 2004
---
It's a console app. You call it and it builds "stuff", much like Ant does. I don't really know much more than that right now, though, so no complicated questions please.
(Oh, and that "screenshot" is messed up, I had to add a "." to make sure it stayed indented properly, Slashdot messed it up otherwise.)
Re:Screenshot (Score:1)
So instead of spending time writing scripts and configuring your make files, you spend that time configuring Maven?
Got it.
--
Kirby Reviews [generalhouseware.com]
Re:Screenshot (Score:3, Informative)
I guess I shouldn't be too surprised, I wasn't on the bandwagon either until I actually used it for a project.
Re:Link to project (Score:5, Informative)
Maven is a command-line tool. The screenshots are not that impressive...:)
If you know Ant (Java much improved version of make), Maven is like Ant on steroid. Maven handles intra/inter-project dependencies, project site documentation generation, unit testing, code coverage, packaging, deployment, and there's even a plugin to test whether your code conform to the coding standard.
One of the major strength of Maven is that it manages the various jar (library) dependencies in a seemless way. Multiple subprojects do not need to duplicate the jars that they depend on. You can even throw multiple subprojects into a "reactor" and it'll build them in the correct order based on their dependency graph.
It's sad that it's for Java only. I wish there's something like Maven for C/C++, or even C#, but so far I don't think I find anything yet.
Re:Link to project (Score:3, Interesting)
Maven is like Ant on steroid.
Great. This is just what the world needs. Ant has something like 100 different tags with like 10 attributes to each of those. Creating large projects with Ant becomes a huge task of managing xml errors while trying to get the damn thing to build something. Now lets add some complication! People will love this. Eat it right up!
Someone really needs to build a better make. Make a better make. Whatever. If your one of those wacky open source coders who dont have a proj
Re:Link to project (Score:2)
That's all it takes. Run qmake on this and then make. And it is platform-independent too, meaning that it will use whatever *make you have (gmake, nmake etc.) on any supported OS (the list is long enough.)
I had a look at Maven's project description file, and I definitely won't use it any time soon even if I get a Java project to work on. It will cost me and other developers way too much time to learn
Re:Link to project (Score:2)
From my experience, it does take a couple days to get up and running with Maven. Say ~10 man hours. This time is insignificant compared with the benefits that it bestows.
Remember, a good programer knows when not to program, and plan, improve processes instead. Also, Maven really only needs to be touches by one person, the project lead. The rest only need to know a couple commands and spend a couple hours to learn how to document stu
Re:Link to project (Score:2)
Not the only thing left out: it's for Java only (Score:5, Informative)
I was quite looking forward to a revolutionary project management tool
Java is great
Re:Not the only thing left out: it's for Java only (Score:5, Insightful)
Is it really Java only? It's written in Java yes, it supports many common Java paradigms - would it not be fairly simple to use doxygen rather than javadoc, gcc rather than javac, nunit rather than junit etc etc.
Ant allows this, and I understand Maven to be an evolution of build tools, so I don't see why it should not be project-development-technology-agnostic.
Re:Not the only thing left out: it's for Java only (Score:5, Informative)
Right now it's effectively a Java tool since most of the plugins are for Java (jar, javac, javadoc, junit, etc).
Re:Not the only thing left out: it's for Java only (Score:5, Informative)
Sure it's written _in_ Java, but it's not just _for_ Java (but naturally, the user community is heavily biased in that direction).
Re:Not the only thing left out: it's for Java only (Score:2)
Idiot Java/XML heads constantly re-inventing the wheel.
Re:Not the only thing left out: it's for Java only (Score:2)
Idiot luddites refusing to see progress when it smacks them in the face.
Re:Not the only thing left out: it's for Java only (Score:2)
What, then, is the progress? As I asked in my post, 'what, exactly, do maven or ant buy which make does not provide?' As I noted, they are written in an ugly language; they use an ugly syntax (XML has all the bad points of S-expressions and few of the good); they do not work with auto*. I did note that make has a bad point.
I also looked at a few sites trying to get an answer. As far as I can see, switching to maven or ant buys m
Re:Not the only thing left out: it's for Java only (Score:3, Insightful)
Also, make/automake/autoconf/autoheader/... can be quite complicated and confusing. Whereas ant (and presumably maven) are pretty simple by comparison.
Oh, you for mean for programming projects only (Score:3, Insightful)
Re:Oh, you for mean for programming projects only (Score:5, Funny)
You want this then... (Score:4, Interesting)
It's similar enough to Microsoft Project. Gantt Charts [wikipedia.org] have been a project management standard for almost 100 years.
Linux, Mac OS X, Windows. It's Java, so take yer pick. GPL'd too.
Uhh, not quite. (Score:2)
And if you think that all you need to effectively manage a project is some Gantt charts, then I have an EULA I'd like you to sign.
I think what the parent poster was hoping for (as was I) was a Project Management system. Gantt charts alone don't cut it.
Re:Not the only thing left out: it's for Java only (Score:5, Informative)
Actually, no, it's not. We use it to build C code, install and configure Oracle and DB2 databases, automate some OpenSSL stuff, put together PHP sites, and rsync stuff all over the place. We also use it for managing our main Java app as well.
Just the tool is Java-based.
Plone-esque proportions (Score:2, Informative)
Re:Plone-esque proportions (Score:1, Informative)
We even had some of Europe's best Plone/Zope experts on the project, and they came to the conclusion that it's not really possible (outside some very narrow fields where you can just use Squid or other similar caching to create scalability from where there is none) to create scalable web applications using those tools.
One of the largest problems was th
Re:Link to project (Score:5, Informative)
It's a Java programming project management tool.
There is a huge difference between the two things.
Re:Link to project (Score:2)