add-classpath stopped working with ns:import?

3 views
Skip to first unread message

Steffen Glückselig

unread,
May 24, 2009, 1:12:09 PM5/24/09
to Clojure
I just updated from SVN resulting in some code of mine no longer
working:


(add-classpath "file:///C:/clojure/scripts/metadata-
extractor-2.3.1.jar")

(ns images.date-sorter
(:import (javax.swing JFileChooser))
(:import (java.io File FilenameFilter))
(:import (java.text SimpleDateFormat))
(:import (com.drew.imaging.jpeg JpegMetadataReader)))
(:use [clojure.contrib.seq-utils :only (group-by)]))



I get:

Exception in thread "main" java.lang.ClassNotFoundException:
com.drew.imaging.jpeg.JpegMetadataReader(image-categorizer.clj:5)
at clojure.lang.Compiler.eval(Compiler.java:4617)
at clojure.lang.Compiler.eval(Compiler.java:4593)
at clojure.lang.Compiler.load(Compiler.java:4931)
at clojure.lang.Compiler.loadFile(Compiler.java:4898)
at clojure.main$load_script__6467.invoke(main.clj:206)
at clojure.main$script_opt__6498.invoke(main.clj:258)
at clojure.main$main__6522.doInvoke(main.clj:333)
at clojure.lang.RestFn.invoke(RestFn.java:413)
at clojure.lang.Var.invoke(Var.java:346)
at clojure.lang.AFn.applyToHelper(AFn.java:173)
at clojure.lang.Var.applyTo(Var.java:463)
at clojure.main.main(main.java:37)
Caused by: java.lang.ClassNotFoundException:
com.drew.imaging.jpeg.JpegMetadataReader
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)



Did something break or was there a chance on purpose - or am I doing
something wrong?


Meikel Brandmeyer

unread,
May 24, 2009, 4:59:32 PM5/24/09
to clo...@googlegroups.com
Hi,

Am 24.05.2009 um 19:12 schrieb Steffen Glückselig:

> Did something break or was there a chance on purpose - or am I doing
> something wrong?

There are changes in the latest SVN which cause
problems with add-classpath. The official fix is:
use the release.

A second comment: The setup you described
indicates, that you use add-classpath in a stable
situation. This is strongly discouraged. The official
use case for add-classpath is to test a library in an
already running repl. In your case the "usual way"
is to setup all libraries before starting Clojure.

That said: YMMV.

Sincerely
Meikel

Reply all
Reply to author
Forward
0 new messages