【问题标题】:clojure project build using gradle clojurephant plugin "namespace not found after loading "使用 gradle clojurephant 插件“加载后找不到命名空间”的 clojure 项目构建
【发布时间】:2022-01-14 00:01:39
【问题描述】:

我正在尝试使用 clojurephant 插件使用 gradle 构建工具构建 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()
    }

下面是 dir src/main/clojure/math dir 中的 calc.clj 文件

(ns math.calc)
(defn add [x y] (+ x y))
(defn demo [x y] (* 2 x y))

下面是 dir src/test/clojure/math dir 中的 calc_test.clj

(ns math.calc)
(defn add [x y] (+ x y))
(defn demo [x y] (* 2 x y))

当我运行 gradle test 时,出现以下错误 -

$ 分级测试

任务:compileTestClojure FAILED 在 (REPL:2:1) 编译语法错误。 加载“/math/calc_test”后找不到命名空间“math.calc-test”

FAILURE:构建失败并出现异常。

  • 出了什么问题: 任务“:compileTestClojure”执行失败。

编译失败。见上面的输出。

  • 试试:

使用 --stacktrace 选项运行以获取堆栈跟踪。 使用 --info 或 --debug 选项运行以获得更多日志输出。 运行 --scan 以获得完整的见解。

此版本中使用了已弃用的 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 个是最新的

我的项目设置有什么问题?我该如何解决这个错误?

【问题讨论】:

    标签: gradle clojure gradle-plugin clojure.spec


    【解决方案1】:

    您在测试中使用了错误的 ns。我一定是(ns math.calc-test)

    【讨论】:

    • 下一个错误将是,没有测试。
    • 为什么说没有测试。在我应用您的建议后, gradle build 命令正在运行。
    • 您粘贴的代码很可能是复制粘贴错误,但对于此错误,它是相同的。那里的代码没有 deftest 等。但另一方面,我从未使用 gradle 为 clojure 构建/运行测试,所以也许这一切都很好(但我真的不明白那里有两个函数会给你什么,除了“0 测试运行-> 没有错误”)
    猜你喜欢
    • 1970-01-01
    • 2021-02-15
    • 1970-01-01
    • 2012-06-13
    • 1970-01-01
    • 1970-01-01
    • 2021-06-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多