clooj + lein2 fail

94 views
Skip to first unread message

Lee Spector

unread,
Oct 6, 2012, 10:41:05 AM10/6/12
to cl...@googlegroups.com

I just ran into this issue, which has been filed for about 5 months (https://github.com/arthuredelstein/clooj/issues/88), and I think it's significant.

Clooj's utility for most users, I would think, depends on it playing nice with leiningen to manage dependencies (which one needs to do now even for fairly basic things, e.g. a lot of the stuff that was formerly in contrib).

I think it's okay that lein is not built in to clooj itself, as long as lein on the command line can be used in an otherwise-clooj-based workflow. This is what I've been doing for some time now for my own work and my classes, etc.

But I think it's a problem now that the officially default version of lein -- the one now linked in the installation instructions -- and the current version of clooj won't play nice together at all.

I think that there are currently at least two kinds of incompatibility:

1) lein2 deps doesn't put things where clooj needs them to be

2) lein2 deps chokes on a project created with clooj 0.3.11

I've personally just run into #2 (using lein version 2.0.0-preview10), but #1 was noted in the filed issue and also by others. The filed issue links to a workaround but only for windows and maybe only for a subset of the incompatibilities.

For the moment I guess the solution is just to stick with lein 1.7.1. But if anyone has the expertise and time to make clooj lein2-compatible it would be a great contribution. I think there will still be some hassles upgrading existing projects, which is a lein 1->2 issue and not a clooj issue, but at least there'd be a path forward for working with clooj and lein2 together.

-Lee

--
Lee Spector, Professor of Computer Science
Cognitive Science, Hampshire College
893 West Street, Amherst, MA 01002-3359
lspe...@hampshire.edu, http://hampshire.edu/lspector/
Phone: 413-559-5352, Fax: 413-559-5438

Lee Spector

unread,
Oct 6, 2012, 10:49:38 AM10/6/12
to cl...@googlegroups.com

Correction: What I described as incompatibility #2 may not exist! But I just confirmed that incompatibility #1 does exist with current versions of lein and clooj.

(I had a mistake in my project.clj that was causing the choking. Lein2 provides an uninformative error message, but reverting to lein1 gave me an informative one; when I fixed that lein2 no longer choked on my project.)

-Lee

Byron Saltysiak

unread,
Nov 22, 2012, 9:29:37 AM11/22/12
to cl...@googlegroups.com
I solved the #1 issue but forcing a copy of all the deps to the lib dir with these two commands:


 lein pom

 mvn dependency:copy-dependencies -DoutputDirectory=lib


Both of these should work immediately without an plugins etc, however I think the true solution would be to have clooj understand the classpath as set by leiningen.


- Byron

Lee Spector

unread,
Nov 22, 2012, 11:48:17 AM11/22/12
to cl...@googlegroups.com

Thanks Byron -- this may come in handy or even save the day for projects that require Lein2.

I agree that Clooj really has to do this automatically if it is to keep filling the niche that it now fills (or at least until recently did).

-Lee
Reply all
Reply to author
Forward
0 new messages