lein-autodoc与Leiningen 2

Pet*_*ter 2 clojure leiningen autodoc

我正在尝试使用lein-autodoc,因为我相信它是Clojure的首选文档生成器.我已:dev-dependencies [[lein-autodoc "0.9.0"]]根据lein-autodoc github页面上的说明添加到我的项目定义中.

运行lein deps运行没有问题,但是lein autodoc失败了,声称车博士不是一个任务.

我怀疑问题是lein-autodoc已经设置为与leiningen 1合作.但是,我正在使用leiningen 2.我是否应该用autodoc调用lein?或者是lein-autodoc包没有设置为与lein 2一起使用?如果没有,是否有另一个首选的lein2兼容文档生成选项?

编辑:

在Cubic的提示下面,我创建~/.lein/profiles.clj如下:

{:user {:plugins [[lein-autodoc "0.9.0"]]}}
Run Code Online (Sandbox Code Playgroud)

现在,运行lein autodoc结果如下:

$ lein autodoc
Exception in thread "main" java.lang.IllegalAccessError: sh does not exist
    at clojure.core$refer.doInvoke(core.clj:3778)
    at clojure.lang.RestFn.applyTo(RestFn.java:139)
    at clojure.core$apply.invoke(core.clj:603)
    at clojure.core$load_lib.doInvoke(core.clj:5279)
    at clojure.lang.RestFn.applyTo(RestFn.java:142)
    at clojure.core$apply.invoke(core.clj:603)
    at clojure.core$load_libs.doInvoke(core.clj:5298)
    (...)
Run Code Online (Sandbox Code Playgroud)

这表明autodoc可能与Lein 2不兼容?如果没有,是否有任何适用于Lein 2的文档系统?

Ray*_*yne 5

autodoc曾经是更常见的文档生成器,但是现在它主要用于Clojure本身(并且针对任务进行了优化).我强烈建议您使用codox代替.这很棒.你可以看到它的行动在我自己的一个项目在这里

(我知道在另一个答案中已经说过了,但是为了我的答案是完整的我还是需要添加它)

此外,在莱宁根2没有:dev-dependencies钥匙.相反,有一个:dev档案.有关更多信息,请查看Leiningen配置文件.在这种情况下,您需要做的就是:plugins使用所需的插件(如codox,autodoc等)为项目或全局用户配置文件添加密钥.