使用 gradle clojurephant 插件构建的 clojure 项目 "namespace not found after loading "
clojure project build using gradle clojurephant plugin "namespace not found after loading "
我正在尝试使用 gradle 构建工具和 clojurephant 插件来构建 clojure 项目。
项目在github here
我的构建文件是 -
plugins {
id 'dev.clojurephant.clojure' version '0.6.0'
id 'application'
}
group 'org.example'
version '0.0.1-SNAPSHOT'
repositories {
maven {
name = 'Clojars'
url = 'https://repo.clojars.org'
}
mavenCentral()
}
dependencies {
implementation 'org.clojure:clojure:1.10.3'
testRuntimeOnly 'org.ajoberstar:jovial:0.3.0'
devImplementation 'org.clojure:tools.namespace:1.1.0'
}
tasks.withType(Test) {
useJUnitPlatform()
}
下面是 calc.clj 目录下的文件 src/main/clojure/math 目录
(ns math.calc)
(defn add [x y] (+ x y))
(defn demo [x y] (* 2 x y))
下面是 calc_test.clj 目录 src/test/clojure/math 目录
(ns math.calc)
(defn add [x y] (+ x y))
(defn demo [x y] (* 2 x y))
当我 运行 gradle test
时,出现以下错误 -
$ gradle test
Task :compileTestClojure FAILED
Syntax error compiling at (REPL:2:1).
namespace 'math.calc-test' not found after loading '/math/calc_test'
失败:构建失败,出现异常。
- 出了什么问题:
任务“:compileTestClojure”执行失败。
Compilation failed. See output above.
- 尝试:
Run with --stacktrace option to get the stack trace.
Run with --info or --debug option to get more log output.
Run with --scan to get full insights.
- 在 https://help.gradle.org
获得更多帮助
此版本中使用了已弃用的 Gradle 功能,使其与 Gradle 8.0 不兼容。
您可以使用“--warning-mode all”来显示各个弃用警告并确定它们是否来自您自己的脚本或插件。
见https://docs.gradle.org/7.3/userguide/command_line_interface.html#sec:command_line_warnings
1 秒内构建失败
2 项可操作任务:1 项已执行,1 项最新
我的项目设置有什么问题?我该如何解决这个错误?
您在测试中使用了错误的 ns。我一定是 (ns math.calc-test)
我正在尝试使用 gradle 构建工具和 clojurephant 插件来构建 clojure 项目。
项目在github here
我的构建文件是 -
plugins {
id 'dev.clojurephant.clojure' version '0.6.0'
id 'application'
}
group 'org.example'
version '0.0.1-SNAPSHOT'
repositories {
maven {
name = 'Clojars'
url = 'https://repo.clojars.org'
}
mavenCentral()
}
dependencies {
implementation 'org.clojure:clojure:1.10.3'
testRuntimeOnly 'org.ajoberstar:jovial:0.3.0'
devImplementation 'org.clojure:tools.namespace:1.1.0'
}
tasks.withType(Test) {
useJUnitPlatform()
}
下面是 calc.clj 目录下的文件 src/main/clojure/math 目录
(ns math.calc)
(defn add [x y] (+ x y))
(defn demo [x y] (* 2 x y))
下面是 calc_test.clj 目录 src/test/clojure/math 目录
(ns math.calc)
(defn add [x y] (+ x y))
(defn demo [x y] (* 2 x y))
当我 运行 gradle test
时,出现以下错误 -
$ gradle test
Task :compileTestClojure FAILED Syntax error compiling at (REPL:2:1). namespace 'math.calc-test' not found after loading '/math/calc_test'
失败:构建失败,出现异常。
- 出了什么问题: 任务“:compileTestClojure”执行失败。
Compilation failed. See output above.
- 尝试:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
- 在 https://help.gradle.org
获得更多帮助此版本中使用了已弃用的 Gradle 功能,使其与 Gradle 8.0 不兼容。
您可以使用“--warning-mode all”来显示各个弃用警告并确定它们是否来自您自己的脚本或插件。
见https://docs.gradle.org/7.3/userguide/command_line_interface.html#sec:command_line_warnings
1 秒内构建失败 2 项可操作任务:1 项已执行,1 项最新
我的项目设置有什么问题?我该如何解决这个错误?
您在测试中使用了错误的 ns。我一定是 (ns math.calc-test)