3

我最近在 Coursera 上完成了 Scala 课程,从那时起,我一直期待着再次接触 Scala。我写代码已经有几年了,但我既没有受过成为程序员的教育,也没有成为程序员,所以我花了一段时间才得到一个好机会,但现在我有一些时间投资和一个好的项目来工作了。 .

除了我似乎无法正确设置东西,我觉得这真的很令人沮丧。我的 Linux 机器上运行着 OpenJDK 1.7.0_25。我已经下载并安装了用于 Eclipse 的 Bundle Scala IDE 构建(就像我们在课程中使用的一样)。我得到了 ScalaTest 作为 jar 文件和 Eclipse 插件。

我有一个简单的项目(到目前为止),无论我做什么,我似乎都无法按顺序进行构建和测试。首先,我应该如何设置我的项目,以便我的课程和测试真正正常运行?我们得到的所有任务都是具有相同结构的项目,所以我必须有:

project
  |--src
      |--main
          |--scala
      |--test
          |--scala

结构体?如果是这样,为什么在我创建新项目时它不是设置项目的默认方式?我是手动创建这些文件夹,作为包还是作为源文件夹?整个事情变得很模糊..

我应该提到我尝试使用 Eclipse 中的上下文菜单“Mavenize”项目,添加了我的 ScalaTest 依赖项。发生的第一件事是我在代码中的每个依赖点都出现编译错误。很明显,这个库是不可见的,换句话说,Maven 似乎没有做太多的管理工作。我认为 Maven 的全部意义在于随着项目的发展获取和维护依赖关系。我得出的结论是我并不完全理解 Maven 的工作方式,因此我最终再次放弃了 Maven,并重新开始手动操作。

其次,我似乎无法运行我的测试;该Run As...菜单项不包括 ScalaTest ,因为它在ScalaTest Eclipse Plug-in 的文档中提到。我已经仔细检查了插件是否已安装。如果我改为尝试使用运行,JUnitRunner那么我的测试不会被识别为有效测试。我的构建路径上有 JUnit 和 ScalaTest,所以它必须是别的东西。

我想我的首要问题如下:

鉴于 Eclipse 和 ScalaTest 的 Scala IDE 构建,我究竟应该如何设置我的项目(在 Eclipse 中),以便我可以专注于编写代码和测试它,希望不会有任何其他头痛?

我一个人工作,这个项目不是我需要交付给某个客户的产品。换句话说,我不需要在这里坚持严格的专业精神。老实说,我只是想能够编码,更好地熟悉 Scala,并希望构建一个我将不时使用的小型数据分析工具。

提前致谢!

4

3 回答 3

1

尝试使用 sbt eclipse 插件: https ://github.com/typesafehub/sbteclipse

这当然是假设您使用 sbt 作为构建工具。如果你现在不知道,你可以在这里找到安装和使用说明:http ://www.scala-sbt.org/

就我个人而言,我一直在使用 typesafe giter8 模板 ( https://github.com/typesafehub/scala-sbt.g8 ) 来设置我的 Scala 项目,然后我使用上面提到的 sbt 插件来生成 eclipse 项目文件。

于 2013-07-18T13:28:15.840 回答
0

Scala 在某种程度上是基于 Maven 的(有时是隐式的),这就是您使用该结构的原因。

我认为最简单的方法是创建一个简单的 Sbt/Maven POM 并创建 Eclipse 项目配置(如sbt eclipse)。在那里您可以设置依赖项(例如要使用的 JUnit 的实际版本,Scalatest),因此您可以轻松使用 ScalaTest 插件。

如果有其他问题,请随时在 ScalaTest 邮件列表中提问,Chee Seng 和 Bill Venners 可以在那里为您提供很多帮助。

于 2013-07-18T13:26:24.730 回答
0

Scala IDE 网站上有关于如何使用 IDE 运行单元测试框架的完整文档,看看吧!如果您发现缺少的元素,scala-IDE 项目的错误跟踪器在这里

于 2013-11-12T14:12:39.940 回答