有可能用main方法创建clojure类型吗?(使用deftype,而不是gen-class)



我看到的在clojure中定义的主方法的示例都使用gen-class和(define -main…)。是否可以使用deftype定义一个具有可执行main方法的类?

这是不可能的,因为deftype可以实现的接口(协议)不能有静态方法。

主方法只有在AOT编译时才有意义(使用gen-class或类似的方法)。

如果您试图以任何其他方式定义它,那么就不可能使用它,因为您需要首先启动clojure编译器/环境。所以你必须通过调用其他main()方法来启动应用程序.....

最新更新