在clojure中对java包名称进行别名化

时间:2009-11-08 22:52:47

标签: clojure

给定一个java包x.y.z,我可以将x.y.z别名为一个较短的名称,这样我就可以将包内的java类称为my-alias.MyJavaClass。

如果那是不可能的,我可以import将所有类放入我的命名空间,但我不想手动指定每个类的名称,而且clojure API文档似乎并不清楚是否可以自动import包中的所有类。

1 个答案:

答案 0 :(得分:10)

此(尚未)没有任何功能。 Java包与Clojure的名称空间不同,因此通常的别名技巧不起作用。

您可以做的是导入每个类,这样可以避免使用完整的包+类名称:

(import [java.io File Writer Reader])
(new File "/")
; #<File />

Rich提供了不支持(import [java.io.*]) here的理由。