Iv been using gant which has built in support for Ivy & Ant (for
example http://tiny.cc/tRGKB), since the build scripts are code they
make it easier to keep build scripts DRY.


On Apr 9, 9:40 pm, Bradford Cross <bradford.n.cr...@gmail.com> wrote:
> On Thu, Apr 9, 2009 at 11:34 AM, Stuart Sierra
> <the.stuart.sie...@gmail.com>wrote:
>
>
>
>
>
> > I keep a "Clojure stuff" dir with the latest revisions of all the
> > projects I track -- Clojure, contrib, swank, slime, etc. -- and update
> > them all with a shell script that runs the various "svn update" and
> > "git pull" commands.  So I always have access to the latest version of
> > everything.  But I don't automatically use the latest releases in my
> > projects!
>
> > Each project that I work on has a "lib" dir for JARs, including
> > Clojure.  I manage the JARs manually, but they're part of my source
> > control repository.  I update the the JARs only when some new
> > functionality or bug fix that I depend on comes out.  That way I know
> > that a project won't suddenly break just because I've updated to the
> > latest Clojure SVN.
>
> > I use Ant for build management, with separate build dirs for compiled
> > Java code and AOT-compiled Clojure code.  Here's my build.xml:
> >http://tinyurl.com/c5vkfm
>
> Cool, thanks, I will look over this stuff today.  Sounds like more or less
> what I have been doing.  What are you doing about building up the classpath
> for your projects in slime/swan? Where does the rake come into play?
>
>
>
> > Multi-version dependency tracking is HARD.  I've never seen a system
> > that does it perfectly -- Rubygems, CPAN, Maven, you name it.
>
> Yea, I don't imagine will solve things beautifully at first, but we should
> be able to at least streamline things a bit.
>
>
>
> > -Stuart S
>
> > On Apr 8, 3:31 pm, Bradford Cross <bradford.n.cr...@gmail.com> wrote:
> > >  When you are building something real with Clojure and Emacs/Slime/Swank
> > -
> > > things can get a bit hairy with dependency management.
>
> > > I have scoured the inter-tubes in the past couple days to see what I
> > could
> > > find.
>
> > > I found Lancet, for builds:
> >http://github.com/stuarthalloway/lancet/tree/master
>
> > > I haven't tried it yet.
>
> > > I found some people doing things with Maven:
>
> > > Creating a clojurue app with maven:
> >http://pupeno.com/blog/how-to-create-a-clojure-application?set_langua...
>
> > > clojure-pom:http://github.com/dysinger/clojure-pom/tree/master
>
> > > I heard some chatter yesterday on #clojure about using Ivy with Clojure.
>
> > > So there is a flurry of activity.  Please let me know if there are other
> > > things that I am missing.
>
> > > What I am doing now from my emacs / slime-repl is hacking things in
> > manually
> > > to my  swank-clojure-extra-classpaths.  This doesn't scale for working
> > with
> > > multiple clojure projects in emacs.
>
> > > I will probably create a script to make things a bit nicer.  But I'd like
> > > something fundamentally better.
>
> > > Here are the issues:
>
> > > -I download lots of little projects things from github and i want to
> > munge
> > > them all together for my app. This means I need to build jars (some with
> > > ant, otehrs with maven, etc.)  and in other cases I want to depend
> > directly
> > > on the .clj files using clojures namespace-to-dir-structure conventions.
> >  So
> > > there are a couple different ways to build of the classpath - one for
> > .clj
> > > and one for .jar.
> > > -Many projects also have their own lib foler - with both jars and cljs,
> > so I
> > > need to pick those deps up transatively.
> > > -The work in the Clojure community is proceeding very fast, so I'd like
> > > updating all the projects from git to be automated as well.
>
> > > So what is a good solution to these problems?  Perhaps it would be cool
> > to
> > > build some git/maven/lancet aware infrastructure to do this refreshing of
> > > deps, building the deps, and building up the classpath.  It may also be
> > good
> > > to configure .emacs to be able to load projects and rebuild the classpath
> > > dynamically based on lancet build files - much in the way that intelliJ
> > or
> > > eclipse load projects from ant .builds or maven poms.
>
> > > Is all this too much, am I missing something that already exists?
--~--~---------~--~----~------------~-------~--~----~
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
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to