2012-04-03 45 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)) 
}