Hi folks,

Apparently everyone is jumping on the Leiningen bandwagon and deleting their build.xml files. I guess that means I'm moving, too.

Now, I like to keep track of Clojure master. Right now, Clojure reports "Clojure 1.2.0-master-SNAPSHOT".

(I don't see that in Maven Central or in Clojars, so I guess I have to put it in my local repository...?)

Unfortunately, not everybody keeps up-to-date like I do; most of the projects I use demand "1.1.0-alpha-SNAPSHOT". I'm sure there are still projects that demand 1.0.

Adjusting the lein script to use my local Clojure install gave me a great error:

Caused by: java.lang.NoSuchMethodError: clojure.lang.RestFn.<init>(I)V
        at clojure.contrib.with_ns$with_ns__7929.<init>(with_ns.clj:20)
        at clojure.contrib.with_ns__init.load(Unknown Source)
        at clojure.contrib.with_ns__init.<clinit>(Unknown Source)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:247)
        at clojure.lang.RT.loadClassForName(RT.java:1523)
        at clojure.lang.RT.load(RT.java:396)
        at clojure.lang.RT.load(RT.java:378)
        at clojure.core$load__4869$fn__4876.invoke(core.clj:4294)
        at clojure.core$load__4869.doInvoke(core.clj:4293)
        at clojure.lang.RestFn.invoke(RestFn.java:409)
        at clojure.core$load_one__4810.invoke(core.clj:4130)
        at clojure.core$load_lib__4825.doInvoke(core.clj:4167)
        at clojure.lang.RestFn.applyTo(RestFn.java:143)
        at clojure.core$apply__3434.invoke(core.clj:478)
        at clojure.core$load_libs__4841.doInvoke(core.clj:4193)
        at clojure.lang.RestFn.applyTo(RestFn.java:138)
        at clojure.core$apply__3434.invoke(core.clj:480)
        at clojure.core$use__4865.doInvoke(core.clj:4271)
        at clojure.lang.RestFn.invoke(RestFn.java:409)
        at leiningen.core$eval__5$loading__4758__auto____6.invoke(core.clj:1)
        at leiningen.core$eval__5.invoke(core.clj:1)
        at clojure.lang.Compiler.eval(Compiler.java:5349)

and I saw a similar problem with builds that referred to libraries built with different versions of Clojure.

How do people deal with this? How can one simultaneously use two libraries which have hardwired dependencies on two different Clojure versions, each of which might be mutually incompatible?

What's the community protocol around locally installing Clojure 1.2, and adding that as a dependency for a published library?

What's the right way to get lein itself to use a recent Clojure build, rather than the version with which it ships?

Thoughts -- and answers! -- welcome.

Thanks,

-R

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

Reply via email to