Brian,

FWIW, I'd claim that maven does deliver on all five points you list. Of note is that it absolutely is IDE-agnostic (I used NetBeans in the screencast because that's what I use -- you can load up maven-defined projects in Eclipse and IntelliJ just as easily). I'm not an emacs user, so I'm unsure what "love" would mean there, but I'd be surprised if there wasn't a maven mode somewhere, etc.

The package browsing/searching story is probably the weakest. There's http://mvnrepository.com , which I just found 2 minutes ago. We have an internal Nexus installation (which caches all of the dependencies we've ever retrieved, so that our builds won't fail if the 'net is down, maven central is down, build.clojure.org is down, etc), which provides a very nice search interface.

I'm not entirely sure what would be required from clojure-maven-plugin (for example) for maven to achieve greater acceptance in the community...as I mentioned, I'm relatively new to maven myself (~ 6 months in), and I paved the rough spots that I hit, but it's hard to speculate because people's workflows and specific requirements are so different. My guess is that once the Clojure-flavored Polyglot Maven project becomes fully-baked, it will become the de facto standard, as XML allergies really are the biggest deterrent right now IMO.

Cheers,

- Chas

On Mar 25, 2010, at 6:17 PM, Brian Carper wrote:

On Mar 25, 11:55 am, Chas Emerick <cemer...@snowtide.com> wrote:
I published a blog post earlier today, along with a short screencast
that might be of interest:

"Like any group of super-smart programmers using a relatively new
language, a lot of folks in the Clojure community have looked at
existing build tools (the JVM space is the relevant one here, meaning
primarily Maven and Ant, although someone will bark if I don't mention Gradle, too), and felt a rush of disdain. I'd speculate that this came mostly because of XML allergies, but perhaps also in part because when
one has a hammer as glorious as Clojure, it's hard to not want to use
it to beat away at every problem in sight."

Ruby: gem install X
Perl: perl -MCPAN -e shell, then "install X"

Why does building and installing dependencies have to be harder than
this?  Lein right now tries to fill this niche of being braindead easy
to use, and comes pretty close.  I realize Maven does a lot more than
build and install dependencies, but for some of us, that's all we want
out of life, and it's pretty nice when it's that easy to do so.

My dream tool would be:

1) Platform-agnostic (for us sorry souls stuck on Windows at work)
2) IDE-agnostic ("make a Netbeans project" is great, but Emacs users
need some love too)
3) Easy to understand and use for the kinds of tasks Lein covers (I
don't want to have to study a Maven book(!) if I can avoid it)
4) Able to handle most or all Clojure and Java libraries I want to
install (I don't want to have to circumvent the build tool and do
things manually if I can help it)
5) Able to easily "browse" or search for packages in remote
repositories, would be nice

Rubygems and Perl's CPAN can handle those kinds of things, for
example.  If Maven can be those things, I'll have an XML sandwich for
lunch with a smile if necessary.  : )  Maybe it can and the community
just needs to standardize around Maven and provide good documentation
and community support for using it with Clojure.  I just hope the
community standardizes around something; any standard is better than
everyone using a different tool.

Thanks
--Brian

--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

To unsubscribe from this group, send email to clojure +unsubscribegooglegroups.com or reply to this email with the words "REMOVE ME" as the subject.

--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

To unsubscribe from this group, send email to clojure+unsubscribegooglegroups.com or 
reply to this email with the words "REMOVE ME" as the subject.

Reply via email to