通过DynamicClassLoader加载的类对.getPackage返回nil。像CIDER和vim-fireplace这样的工具依赖这些信息来实现自动完成等功能。
(.getPackage String) ;; => #<Package package java.lang, Java平台API规范,版本1.7> (deftype T []) (.getPackage T) ;; => nil
建议:在DynamicClassLoader.defineClass()期间,对正在定义的类调用definePackage()方法(类似于URLClassLoader的做法)。
补丁:clj-1550-v4.patch
审核:Alex Miller