{"action":"opened","issue":{"url":"https://api.github.com/repos/Frege/frege-lein-plugin/issues/2","labels_url":"https://api.github.com/repos/Frege/frege-lein-plugin/issues/2/labels{/name}","comments_url":"https://api.github.com/repos/Frege/frege-lein-plugin/issues/2/comments","events_url":"https://api.github.com/repos/Frege/frege-lein-plugin/issues/2/events","html_url":"https://github.com/Frege/frege-lein-plugin/issues/2","id":68752548,"number":2,"title":"Dependencies classpath isn't handled?","user":{"login":"berdario","id":752835,"avatar_url":"https://avatars.githubusercontent.com/u/752835?v=3","gravatar_id":"","url":"https://api.github.com/users/berdario","html_url":"https://github.com/berdario","followers_url":"https://api.github.com/users/berdario/followers","following_url":"https://api.github.com/users/berdario/following{/other_user}","gists_url":"https://api.github.com/users/berdario/gists{/gist_id}","starred_url":"https://api.github.com/users/berdario/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/berdario/subscriptions","organizations_url":"https://api.github.com/users/berdario/orgs","repos_url":"https://api.github.com/users/berdario/repos","events_url":"https://api.github.com/users/berdario/events{/privacy}","received_events_url":"https://api.github.com/users/berdario/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-04-15T18:19:09Z","updated_at":"2015-04-15T18:19:09Z","closed_at":null,"body":"Hi, I'm trying out Frege, and defining a simple hello world module that uses a Java library:\r\n\r\nhttps://gist.github.com/berdario/402d529b1874d4afd04b\r\n\r\nUnfortunately, `lein fregec` fails with:\r\n\r\n```\r\ndario@curie ~/P/s/f/helloproject (master#)> lein fregec\r\nE /home/dario/Projects/snippets/frege/helloproject/src/Hello.fr:3: `org.joda.time.Years` is not a known java class\r\nHello: build failed because of compilation errors.\r\nBuild failed.\r\nFrege compilation failed!\r\nSubprocess failed\r\n```\r\n\r\nSimilarly, `lein uberjar`:\r\n\r\n```dario@curie ~/P/s/f/helloproject (master#) [1]> lein uberjar\r\nWarning: specified :main without including it in :aot. \r\nImplicit AOT of :main will be removed in Leiningen 3.0.0. \r\nIf you only need AOT for your uberjar, consider adding :aot :all into your\r\n:uberjar profile instead.\r\nE /home/dario/Projects/snippets/frege/helloproject/src/Hello.fr:3: `org.joda.time.Years` is not a known java class\r\nHello: build failed because of compilation errors.\r\nBuild failed.\r\nFrege compilation failed!\r\nUberjar aborting because jar failed: Subprocess failed\r\n```\r\n\r\nIf I uncomment [line 11](https://gist.github.com/berdario/402d529b1874d4afd04b#file-project-clj-L11) in the project.clj, both operations work, or also if I invoke fregec with `lein fregec :fp ~/.m2/repository/joda-time/joda-time/2.7/joda-time-2.7.jar`\r\n\r\nStill, `lein fregec :fp ~/.m2/repository/joda-time/joda-time/2.7/joda-time-2.7.jar :run Hello` will fail with\r\n\r\n```Exception in thread \"main\" java.lang.reflect.InvocationTargetException, compiling:(/tmp/form-init7777763093074268137.clj:1:72)\r\n\tat clojure.lang.Compiler.load(Compiler.java:7142)\r\n\tat clojure.lang.Compiler.loadFile(Compiler.java:7086)\r\n\tat clojure.main$load_script.invoke(main.clj:274)\r\n\tat clojure.main$init_opt.invoke(main.clj:279)\r\n\tat clojure.main$initialize.invoke(main.clj:307)\r\n\tat clojure.main$null_opt.invoke(main.clj:342)\r\n\tat clojure.main$main.doInvoke(main.clj:420)\r\n\tat clojure.lang.RestFn.invoke(RestFn.java:421)\r\n\tat clojure.lang.Var.invoke(Var.java:383)\r\n\tat clojure.lang.AFn.applyToHelper(AFn.java:156)\r\n\tat clojure.lang.Var.applyTo(Var.java:700)\r\n\tat clojure.main.main(main.java:37)\r\nCaused by: java.lang.reflect.InvocationTargetException\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\tat java.lang.reflect.Method.invoke(Method.java:606)\r\n\tat user$eval3.invoke(form-init7777763093074268137.clj:1)\r\n\tat clojure.lang.Compiler.eval(Compiler.java:6703)\r\n\tat clojure.lang.Compiler.load(Compiler.java:7130)\r\n\t... 11 more\r\nCaused by: java.lang.NoClassDefFoundError: org/joda/time/Years\r\n\tat Hello$1$1.eval(Hello.java:139)\r\n\tat frege.runtime.Delayed.call(Delayed.java:198)\r\n\tat frege.runtime.Delayed.forced(Delayed.java:257)\r\n\tat Hello$Ĳ$getYearsƒ2c78b3e0.eval(Hello.java:161)\r\n\tat Hello$Ĳ$getYearsƒ2c78b3e0.eval(Hello.java:158)\r\n\tat frege.runtime.Fun1$1.eval(Fun1.java:63)\r\n\tat frege.runtime.Delayed.call(Delayed.java:200)\r\n\tat frege.runtime.Delayed.forced(Delayed.java:257)\r\n\tat Hello$Ĳ$printlnƒcfbbb639.eval(Hello.java:178)\r\n\tat Hello$Ĳ$printlnƒcfbbb639.eval(Hello.java:172)\r\n\tat frege.runtime.Fun1$1.eval(Fun1.java:63)\r\n\tat frege.runtime.Delayed.call(Delayed.java:198)\r\n\tat frege.runtime.Delayed.forced(Delayed.java:257)\r\n\tat Hello._main(Hello.java:130)\r\n\tat Hello$Ĳ$_mainƒ80d26b67.eval(Hello.java:168)\r\n\tat Hello$Ĳ$_mainƒ80d26b67.eval(Hello.java:165)\r\n\tat frege.runtime.Fun1$1.eval(Fun1.java:63)\r\n\tat frege.runtime.Delayed.call(Delayed.java:198)\r\n\tat frege.runtime.Delayed.forced(Delayed.java:267)\r\n\tat Hello.main(Hello.java:187)\r\n\t... 18 more\r\nCaused by: java.lang.ClassNotFoundException: org.joda.time.Years\r\n\tat java.net.URLClassLoader$1.run(URLClassLoader.java:366)\r\n\tat java.net.URLClassLoader$1.run(URLClassLoader.java:355)\r\n\tat java.security.AccessController.doPrivileged(Native Method)\r\n\tat java.net.URLClassLoader.findClass(URLClassLoader.java:354)\r\n\tat java.lang.ClassLoader.loadClass(ClassLoader.java:425)\r\n\tat sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)\r\n\tat java.lang.ClassLoader.loadClass(ClassLoader.java:358)\r\n\t... 38 more\r\nSubprocess failed\r\n```\r\n\r\nWhile the uberjar isn't quite an uberjar, since I have to supply the Joda dependency manually in the classpath:\r\n\r\n`java -cp /home/dario/.m2/repository/joda-time/joda-time/2.7/joda-time-2.7.jar:target/example-0.1.0-SNAPSHOT-standalone.jar Hello` \r\n\r\nIs this expected behavior and are these simply features yet-to-be-implemented?\r\n\r\n\r\nThank you"}}