Make gen-class require the namespace instead of the direct file

diff --git a/src/clj/clojure/genclass.clj b/src/clj/clojure/genclass.clj
--- a/src/clj/clojure/genclass.clj
+++ b/src/clj/clojure/genclass.clj
@@ -290,7 +290,12 @@
         (. gen putStatic ctype (var-name v) var-type))
       
       (. gen push ctype)
-      (. gen push (str (. name replace \. \/) ".clj"))
+      (let [last-dot (. pkg-name lastIndexOf (int \.))
+            ns-filepart (if (>= last-dot 0)
+                          (. pkg-name substring (inc last-dot))
+                          pkg-name)
+            file (str (. pkg-name replace \. \/) "/" ns-filepart ".clj")]
+        (. gen push file))
       (. gen push 0)
       (. gen (invokeStatic rt-type (. Method (getMethod "void loadResourceScript(Class,String,boolean)"))))
       
