我是 Scala 程序员的新手,以前没有 Java 经验;我来自 ruby 。我正在尝试运行我的第一个 TDD 示例程序。我正在计划一些非常小的事情,可能会进行 5 或 6 次测试。我正在尝试使用 specs2 库。我没有 IDE,我通常用 vim 编程并从命令行执行东西。

如何从命令行在我的小 .scala 文件上使用 scala 和 specs2?

Quick Start 他们提到了这一点:

scala -cp ... specs2.run HelloWorldSpec
  • 我不知道省略号( ... )代表什么。我必须在那里放什么?
  • 该命令引用(我假设)一个名为 specs2.run 的文件。但在下载部分,我只得到一个 .jar 文件。 specs2.run 在哪里?
  • dependencies 部分,我介绍了两种技术 - sbt 和 maven(我用谷歌搜索了它们,以前不知道它们)。无论如何我都必须使用 sbt/maven 吗?我不能只使用控制台命令吗?它只有 1 个文件,有 5 个测试。
  • 我知道有一个示例应用程序,但同样没有关于如何运行它的说明。我认为它已经准备好与 sbt 和 maven 一起工作。我宁愿不必学习使用其中任何一个来进行快速测试。是否可以?

  • 非常感谢。

    最佳答案

    欢迎使用 scala 和 specs2!

  • ... 代表运行规范所需的所有 jar 的路径,包括您自己的(或包含 .class 文件的目录的路径)。这些 jar 列在 Runners 页面上。对于简单的规范,您只需要 scalaz-corescalaz-concurrentspecs2
  • specs2.run 是用于在命令行上运行规范的类的全名。因此,运行规范的完整命令如下所示:
    scala -cp scalaz-core.jar:scalaz-concurrent.jar:specs2.jar:your-classes-directory specs2.run YourSpecification
  • 如果您知道从何处获取所需的 jar 以及如何编译 Scala 类(使用 scalac 命令),您确实可以仅在没有 sbt 或 maven 的情况下使用命令行
  • 是的,示例应用程序带有 sbt 和 maven 项目文件,因此运行测试只需以 sbt test 为例。如果这样做,sbt 会安装所有必需的依赖项,编译类并运行测试。我认为这是开始的最佳方式(按照 sbt install guide ,它真的很快恕我直言)但同样,对于一个简单的项目,您也可以手动执行
  • 关于scala - 如何从命令行运行 Scala + specs2?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7863185/

    10-10 19:59