If you try to do it without eval and you don't have the apache stuff on your classpath, then you get an exception while compiling, before class/forname is ever called.
On Nov 22, 11:33 am, vitalyper <vitaly...@yahoo.com> wrote: > Gary, > > You were right with your initial reply. Sorry I did not get it. Thanks > for your help in understanding this. > > On Nov 22, 1:58 pm, Gary Trakhman <gary.trakh...@gmail.com> wrote: > > > > > > > > > Also I think this line doesn't actually do anything: (Class/forName > > "foo.bar") > > > It will effectively just ask the classloader to load the class. You > > removed more than the eval in your referenced code, you removed the code > > that did anything. That code needs to be there. It's eval'd because it's > > not guaranteed to be compilable for projects without commons-logging in > > their classpath. > > > (defn cl-factory > > "Returns a Commons Logging-based implementation of the > > LoggerFactory > > protocol, or > > nil if not available." > > [] > > (try > > (Class/forName "foo.bar") > > ; eval removed > > (catch Exception e nil))) -- 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