Maybe I spoke too soon. I have now stepped into the Twilight Zone. Changes I make to files do not get built when a try to run lein.
Just to get some kind of reaction from Leinengen I just put random garbage in the ns clause of my core.clj: (ns lkjlkljlkjlkj mpdv.core (:gen-class) (:import (java.net URL URLConnection) (java.io ByteArrayInputStream BufferedReader IOException InputStream InputStreamReader OutputStreamWriter UnsupportedEncodingException) (java.text SimpleDateFormat) (java.util Date) (java.security MessageDigest) (org.apache.commons.mail SimpleEmail HtmlEmail) (org.joda.time.format DateTimeFormat ISODateTimeFormat) (Base64Coder) (lkjlkjlkjoiuoiu)) This should have caused an error, but instead, when I did "lein uberjar" everything compiled -- but compiled without any of the changes I've made during the last 30 minutes. In the terminal, from the same terminal that I run "lein uberjar" I can run: cat src/mpdv/core.clj and I see my changes, including the random garbage that I just wrote, but somehow, if I then type "lein uberjar" lein does not see it. I do not know if this issue is related, but following the advice about polygots, given here: https://github.com/technomancy/leiningen/blob/stable/doc/MIXED_PROJECTS.md I added this to my project.clj file: :source-paths ["src/mpdv"] :java-source-paths ["src/java"] Did I do something wrong here? Why is Leinengen still compiling, even though the source code is full of garbage? On Friday, February 22, 2013 5:01:15 PM UTC-5, larry google groups wrote: > > Ah, I see. This is a "polygot" project, which Leiningen describes here: > > https://github.com/technomancy/leiningen/blob/stable/doc/MIXED_PROJECTS.md > > That worked for me. Leiningen saves the day again. > > > On Friday, February 22, 2013 4:25:04 PM UTC-5, larry google groups wrote: >> >> When I just do something obvious, like in mpdv.core: >> >> (ns mpdv.core >> (:gen-class) >> (:import >> (Base64Coder)) >> >> and then call its static methods I get: >> >> Exception in thread "main" java.lang.NoClassDefFoundError: Base64Coder >> (wrong name: com/omniture/security/Base64Coder), >> compiling:(mpdv/core.clj:130) >> >> >> >> >> On Friday, February 22, 2013 4:18:00 PM UTC-5, larry google groups wrote: >>> >>> I am ignorant of the JVM, and of Java, so I am sure this is a dumb >>> question. >>> >>> I need to post to the Omniture API. They offer some sample code here: >>> >>> https://developer.omniture.com/en_US/blog/calling-rest-api-in-java >>> >>> That code depends on a Base64Coder class which they offer in a zip file. >>> I downloaded it and did: >>> >>> javac Base64Coder.java >>> >>> and this gave me Base64Coder.class. >>> >>> I created my project with Leinengen2. >>> >>> I thought maybe I could just copy Base64Coder.class to the >>> target/classes folder, but then how would I reference it in my code? >>> >>> >>> -- -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to [email protected] Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
