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 -~----------~----~----~----~------~----~------~--~---