2024年Clojure状态调查! 中分享您的想法。

欢迎!请查看关于页面,了解更多关于如何使用本指南的信息。

0
文档

大家好
我担心https://clojure.org/guides/tools_build中有一个错别字

在编译uberjar应用程序构建部分,build.clj应该是

...

(b/uber {:class-dir class-dir

       :uber-file uber-file
       :basis basis
       :main 'my.lib.main}))

当前读作 :main my.lib.main (没有单引号)

这可能对有经验的开发者来说是明显的,但对我这样的初学者来说却是个问题

谢谢!

1 个答案

0

考虑到主命名空间是特定于项目的,我想知道是不是将

(def main-ns 'my.lib.main)

放在顶部(在lib之后),然后在uber的调用中使用这个变量会更好?

(b/uber {:class-dir class-dir
         :uber-file uber-file
         :basis     basis
         :main      main-ns})

然后可能值得显示一个替代的compile-clj调用,仅编译该主命名空间,而不是隐式编译"所有",并显示在提供:ns-compile [main-ns]时,:src-dirs可以是[]

...