我有以下def toString(x: Any) = x.toString
toString(myValueClass)
.lein-classpath
然后在任务下,我有
tasks
然后我有tasks
> leiningen
>foo-bar.clj
foo.clj
当我运行(ns leiningen.foo-bar)
(defn foo-bar [project & args]
(println "foo"))
时,我会收到:
lein foo-bar
运行'foo-bar' is not a task. See 'lein help'.
Did you mean this?
foo-bar
会产生(在一般默认任务中):
lein help
我在使用java 1.8.0_77的leiningen 2.7.1
foo Task: 'foo-bar' not found
,.lein-classpath
和tasks
都在项目根目录
更多诊断结果:
project.clj
生成:which lein
/usr/local/bin/lein
不包含~/.lein
,也不包含任何任务定义
.lein-classpath
不存在
我将如何定义此任务?为什么它"有点"看到任务(你的意思是这个吗?......)
答案 0 :(得分:3)
回想一下,对于所有Clojure文件,不仅仅是leiningen任务,名称空间foo-bar
必须位于名为foo_bar.clj
的文件中,而不是foo-bar.clj
。
答案 1 :(得分:1)
此错误表示leiningen无法找到任务文件。
请记住.lein-classpath必须位于项目根目录中,就在project.clj所在的位置。此外,路径相对于项目根目录,因此如果您的任务位于<root>/src/tasks
,则必须将src/tasks
放在.lein-class路径中。