【问题标题】:clojure maven plugin: clojure tests succeed when using mvn clojure:test but NOT during test phase when using mvn installclojure maven 插件:使用 mvn clojure:test 时 clojure 测试成功,但使用 mvn install 时在测试阶段不成功
【发布时间】:2013-07-25 13:29:10
【问题描述】:

我正在使用 clojure maven 插件来构建一个项目。这些项目包含一个测试,比如 mytest.clj,其内容如下:

(def ^:dynamic *server*
  (create-server "tcp://bla.bla:9999"))

(deftest blabla1...)
(deftest blabla2...)

如果我运行 mvn clojure:test ,则构建运行成功。

但如果我运行 mvn install,那么当达到测试阶段时,mytest.clj 中声明的服务器就会启动。开始之后,什么也没有发生:clojure 测试脚本似乎被冻结并且项目的构建无法继续(没有任何错误消息):Maven 只是挂起。尽管如前所述,mvn clojure:test 可以成功运行同一个项目。

有人知道如何解决这个问题吗?

任何帮助将不胜感激。 提前谢谢 问候

贺拉斯

PS:我可以使用标准的 mvn install 来编译和测试 clojure 源代码,因为我的项目的包装在 pom 中配置为“clojure” .xml。其结果是 clojure maven 插件会自动将自身绑定到 maven 阶段 compile、test 和 test-compile。

【问题讨论】:

    标签: maven clojure maven-2 clojure-java-interop


    【解决方案1】:

    问题是您在运行测试时正在启动服务器,但在一切完成后您并没有关闭该服务器。

    您需要使用固定装置来确保您正在杀死您在测试中启动的所有线程/代理/服务器。

    Clojure: How To use-fixtures in Testing

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-08
      • 2019-06-23
      • 1970-01-01
      • 2013-06-29
      • 2012-08-21
      • 2023-01-30
      • 2021-04-23
      • 1970-01-01
      相关资源
      最近更新 更多