【问题标题】:How do I get sbt 0.10.0 to compile files in a subdirectory?如何让 sbt 0.10.0 编译子目录中的文件?
【发布时间】:2011-09-15 18:41:06
【问题描述】:

我的项目根目录中有一个 build.sbt 文件。我所有的源文件都位于子目录 src(以及 src/irc、src/xmpp)中。

这是我的 build.sbt

名称 := "mrtoms"

组织 := "chilon"

scalaVersion := "2.9.0"

版本 := "0.1"

libraryDependencies ++= Seq("commons-httpclient" % "commons-httpclient" % "3.1")

crossPaths := false

scalaHome := Some(file("/usr/share/scala"))

目标 := 文件(“项目/目标”)

sourceDirectory := file("src")

mainClass := Some("org.chilon.mrtoms.MrToms")

但是 sbt 总是只创建一个空的 jar 文件。

我尝试将 build.sbt 放在“src”目录中,但它错过了“src”子目录中的所有 scala 文件。

【问题讨论】:

    标签: scala sbt


    【解决方案1】:

    似乎您需要提供相对于基本目录的路径。这应该对你有用(它取代了sourceDirectory := file("src")):

    scalaSource in Compile <<= baseDirectory(_ / "src")
    

    您可以在此线程中找到更多信息:

    http://groups.google.com/group/simple-build-tool/browse_thread/thread/095e87247d146fa7?fwc=1

    【讨论】:

    • 当我将上述行添加到 build.sbt 时,我得到“表达式中的类型错误”
    【解决方案2】:

    如果要替换默认约定,则需要覆盖 scala 和 java 源位置

    scalaSource in Compile <<= baseDirectory(_ / "src")
    
    javaSource in Compile <<= baseDirectory(_ / "src")
    

    【讨论】:

      猜你喜欢
      • 2014-10-25
      • 1970-01-01
      • 1970-01-01
      • 2014-04-15
      • 2011-07-30
      • 1970-01-01
      • 2012-12-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多