Hello,

I am trying to use the latest ns/in-ns functionality
from HEAD. I don't seem to be getting it right.

Here is what I am tring to do.
1. test.clj - contains a function foo
2. tst-pkg.clj - contains the ns definition (so I can
                 get my dependencies right in a multi-file
                 project). I am assuming all loads for
                 'ns' happen sequentially.

I put these in $HOME/code/mycode.
I create a directory $HOME/.clj/user and softlink
$HOME/code/mycode into this. $HOME/.clj/user is in the
classpath.

Contents of the files below:

--- test.clj start ---
(in-ns 'bar)
(clojure/defn foo [] :foo-called)

--- test.clj end ---

--- tst-pkg.clj start ---
(ns bar
  (:refer-clojure)
  (:load-resources "mycode/test.clj"))
--- tst-pkg.clj end ---

If I load-resources test.clj directly it works.

    user=> (load-resources "mycode/test.clj")
    nil
    user=> (bar/foo)
    :foo-called
    user=>

However, when I try to either load-file or load-resources
tst-pkg.clj I get errors.

    [parth:~/code/mycode]% clj
    Clojure
    user=> (load-resources "mycode/tst-pkg.clj")
    java.io.FileNotFoundException: Could not locate Clojure resource
on classpath: bar/mycode/test.clj
    java.io.FileNotFoundException: Could not locate Clojure resource
on classpath: bar/mycode/test.clj
            at clojure.lang.RT.loadResourceScript(RT.java:365)
            at clojure.lang.RT.loadResourceScript(RT.java:347)
            at clojure.lang.RT.loadResourceScript(RT.java:339)
            at clojure.load_resources__1744.doInvoke(boot.clj:3209)
            at clojure.lang.RestFn.invoke(RestFn.java:413)
            at user.eval__2286.invoke(tst-pkg.clj:1)
            at clojure.lang.Compiler.eval(Compiler.java:3850)
            at clojure.lang.Compiler.load(Compiler.java:4151)
            at clojure.lang.RT.loadResourceScript(RT.java:360)
            at clojure.lang.RT.loadResourceScript(RT.java:347)
            at clojure.lang.RT.loadResourceScript(RT.java:339)
            at clojure.load_resources__1744.doInvoke(boot.clj:3209)
            at clojure.lang.RestFn.invoke(RestFn.java:413)
            at user.eval__2283.invoke(Unknown Source)
            at clojure.lang.Compiler.eval(Compiler.java:3850)
            at clojure.lang.Repl.main(Repl.java:75)
    user=> (load-file "/home/parth/code/mycode/tst-pkg.clj")
    java.io.FileNotFoundException: Could not locate Clojure resource
on classpath: bar/mycode/test.clj
    java.io.FileNotFoundException: Could not locate Clojure resource
on classpath: bar/mycode/test.clj
            at clojure.lang.RT.loadResourceScript(RT.java:365)
            at clojure.lang.RT.loadResourceScript(RT.java:347)
            at clojure.lang.RT.loadResourceScript(RT.java:339)
            at clojure.load_resources__1744.doInvoke(boot.clj:3209)
            at clojure.lang.RestFn.invoke(RestFn.java:413)
            at user.eval__2292.invoke(tst-pkg.clj:1)
            at clojure.lang.Compiler.eval(Compiler.java:3850)
            at clojure.lang.Compiler.load(Compiler.java:4151)
            at clojure.lang.Compiler.loadFile(Compiler.java:4118)
            at clojure.lang.RT$3.invoke(RT.java:289)
            at user.eval__2289.invoke(Unknown Source)
            at clojure.lang.Compiler.eval(Compiler.java:3850)
            at clojure.lang.Repl.main(Repl.java:75)
    user=>

What am I doing wrong here? Thanks.

Parth

--~--~---------~--~----~------------~-------~--~----~
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
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to