1

Hi am totally new to clojure, and have just installed clojure and CounterClockwise. I have created a new clojure project named "myproject". Entering (foo "test") gives : "test Hello, World!" just as expected. When I select the "myproject" in the navigator, and run as Java compilation -> Compile clojure.lang, I get following error:

ERROR: Must set system property clojure.compile.path to the location for compiled .class files. This directory must also be on your CLASSPATH.

What does this mean? How do I fix this?

2 Answers 2

1

It seems like the eclipse builtin jar creation tool has some problems. CCW recommends to install a plugin for eclipse to create a fat jar: http://fjep.sourceforge.net/

CCW documentation: http://doc.ccw-ide.org/documentation.html#_create_a_fat_executable_jar_with_all_dependencies_packaged_into

I still want to emphasize on using leiningen. Whatever you will do later, it is easy to integrate leiningen into your build process, it is independent of the IDE you use and also OS independent.

There are a lot more advantages you get with leiningen (existing plugins, templates, community support, ...).

Sign up to request clarification or add additional context in comments.

Comments

1

It's generally recommended that you create your projects with the Clojure build tool leiningen (aka "lein"), and use that to create the projects and manage the dependencies etc. counterclockwise detects lein projects automatically. Lein will create a file called project.clj that defines things like compile and source paths as well as the the main class.

4 Comments

Thanks. I have in fact used leiningen. Still the same problem.
You might also want to use leiningen to create a jar / uberjar with "lein jar" or "lein uberjar" from your project path.
is that something I can do in Counterclockwise? If I understood correctly, leiningen is integrated into Counterclockwise. Is that correct? And finally, how can I do that?
the people I have talked to about it run it outside eclipse.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.