clojure - 如何使用 Leiningen 指定类路径?

标签 clojure classpath leiningen

在 Clojure 中,我有一个 Leiningen 项目,其源代码位于

/src/project/core.clj

我想为此添加一个子目录。例如。

/src/project/examples/example-one.clj

在我的 core.clj 文件中,我尝试从

中提取内容
project.examples.example-one

但是lein编译仍然告诉我

Could not locate project/examples/example_one__init.class or project/examples/example_one.clj on classpath: 

如果向主代码目录添加子目录,是否必须显式更新 project.clj 文件? (我没有看到主代码目录本身是明确给出的。)

最佳答案

如果您的命名空间包含破折号,则相应的文件应包含下划线而不是那些破折号。您可以在这里阅读原因:

why-does-clojure-convert-dashes-in-names-to-underscores-in-the-filesystem

除非您添加不同的源代码,例如 Java、Groovy 等...默认情况下 lein 将包含 src 文件夹中的所有命名空间。

关于clojure - 如何使用 Leiningen 指定类路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23714321/

相关文章:

java - 在 Leiningen (Clojure) for Android 中设置 JavaVersion sourceCompatibility(Java 1.7 vs 1.8)

java - Clojure Java 互操作错误 : Illegal Argument Exception: NO MATCHING CONSTRUCTOR FOUND

java - 如何在 Clojure 中使用自己的 Java 异常类?

clojure - 在浏览器中编辑、编译和运行 Clojure 代码?

clojure - 有没有一种方法可以像 Clojure 中那样在 Common Lisp 中使用关键字作为函数?

java - java程序中的"Cannot find symbol"

android - Android 上的 NoClassDefFoundError - 一个非常奇怪的情况?

java - 如何测试在类路径上找不到文件? java( Spring @Configuration)

clojure - 为什么 lein run 挂起?

java - Leiningen java-agents 不在 uberjar 中工作