2012-04-03 33 views
3

我想我的OSX的機器上運行一些Scala代碼和不斷獲取,說Specs2在OSX - 錯誤:對象specs2不包組織的

error: object specs2 is not a member of package org

我有版本錯誤成員安裝了Scala 2.9.1-1。 我也使用verison SBT的0.7.7

我build.sbt文件看起來像這樣

name := "Comp-338-Web-App" 

version := "1.0" 

scalaVersion := "2.9.1" 

scalacOptions += "-deprecation" 

libraryDependencies ++= Seq(
    "junit" % "junit" % "4.7", 
    "org.specs2" %% "specs2" % "1.8.2" % "test", 
    "org.mockito" % "mockito-all" % "1.9.0", 
    "org.hamcrest" % "hamcrest-all" % "1.1" 
) 

resolvers ++= Seq("snapshots" at "http://oss.sonatype.org/content/repositories/snapshots", 
       "releases" at "http://oss.sonatype.org/content/repositories/releases") 

我已經嘗試了一堆不同的東西,但不能使其正常運行測試。

有什麼建議嗎?

讓我知道您是否需要有關我的電腦上的設置的更多信息。

回答

3

該解決方案看起來很簡單:請使用sbt的最新版本,當前爲0.11.2。

您正在使用的版本0.7.x不知道如何使用build.sbt,它只在sbt 0.9左右引入。

+0

如果我使用的gradle什麼? – tutuca 2014-04-28 13:13:37

0

除了轉移到sbt 0.11.2,我建議去full configuration,即使作者建議對大多數任務使用.sbt描述符,並且只有在使用.sbt語法無法實現某些內容時才使用.scala描述符,或者使用.sbla描述符子項目(我爲我的所有項目都做了明確區分應用程序的不同部分)。

下面是我用我剛剛開始,所以它只有specs2依賴項目的示例項目設置:

import sbt._ 
import Keys._ 

object BuildSettings { 
    val buildOrganization = "net.batyuk" 
    val buildScalaVersion = "2.9.1" 
    val buildVersion = "0.1" 

    val buildSettings = Defaults.defaultSettings ++ Seq(organization := buildOrganization, 
    scalaVersion := buildScalaVersion, 
    version := buildVersion) 
} 

object Resolvers { 
    val typesafeRepo = "Typesafe Repository" at "http://repo.typesafe.com/typesafe/releases/" 
    val sonatypeRepo = "Sonatype Releases" at "http://oss.sonatype.org/content/repositories/releases" 

    val scalaResolvers = Seq(typesafeRepo, sonatypeRepo) 
} 

object Dependencies { 
    val specs2Version = "1.8.2" 

    val specs2 = "org.specs2" %% "specs2" % specs2Version 
} 

object IdefixBuild extends Build { 

    import Resolvers._ 
    import Dependencies._ 
    import BuildSettings._ 

    val commonDeps = Seq(specs2) 

    lazy val idefix = Project("idefix", file("."), settings = buildSettings ++ Seq(resolvers := scalaResolvers, 
                        libraryDependencies := commonDeps)) 
}