Simple scalatest project won't be compiled

I'm just following Scala Cookbook

But if I tried to run basic test, it won't be compiled because of unresolved package library.

Here's my code...

build.sbt

name := "BasicProjectWithScalaTest"

version := "1.0"

scalaVersion := "2.10.3"

libraryDependencies += "org.scalatest" %% "scalatest" % "1.9.+" % "test"

*Hello.scala *

package com.alvinalexander.testproject

object Hello extends App {
  val p = Person("Avlin Alexander")
  println("Hello from " + p.name)
}

case class Person(var name: String)

HelloTest.scala

package com.alvinalexander.testproject

import org.scalatest.FunSuite

class HelloTests extends FunSuite {
  test("the name is set correctly in constructor") {
    val p = Person("Barney Rubble")
    assert(p.name == "Barne Rubble")
  }

  test("a Person's name can be changed") {
    val p = Person("Chad Johnson")
    p.name = "Ochocinco"
    assert(p.name == "Ochocinco")
  }
}

If run run sbt compile , it complains...

[info] Set current project to BasicProjectWithScalaTest (in build file:/Users/hongseok/dev/scala/test/)
[info] Updating {file:/Users/hongseok/dev/scala/test/}test...
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[info] Done updating.
[info] Compiling 1 Scala source to /Users/hongseok/dev/scala/test/target/scala-2.10/classes...
[error] /Users/hongseok/dev/scala/test/src/main/scala/HelloTest.scala:3: object scalatest is not a member of package org
[error] import org.scalatest.FunSuite
[error]            ^
[error] /Users/hongseok/dev/scala/test/src/main/scala/HelloTest.scala:5: not found: type FunSuite
[error] class HelloTests extends FunSuite {
[error]                          ^
[error] /Users/hongseok/dev/scala/test/src/main/scala/HelloTest.scala:6: not found: value test
[error]   test("the name is set correctly in constructor") {
[error]   ^
[error] /Users/hongseok/dev/scala/test/src/main/scala/HelloTest.scala:11: not found: value test
[error]   test("a Person's name can be changed") {
[error]   ^
[error] four errors found
[error] (compile:compile) Compilation failed

build.sbt is in test directory, Hello.scala is in test/src/main/scala and HelloTest.scala is in test/src/test/scala

I can find scalatest_2.10-1.9.2.jar in .ivy2 directory.

Why the library could not be resolved?

By the way, I'm using OSX Mountain Lion, sbt 0.13, Scala 2.10.3.


pedrofurla wrote:

The convention is src/main/scala and src/test/scala .

OP wrote:

I made mistake with its file location. And if I correct it, works well.

链接地址: http://www.djcxy.com/p/75034.html

上一篇: 何时在JavaScript中使用setAttribute vs .attribute =?

下一篇: 简单的scalatest项目不会被编译