SBT 0.10和IDEA的初学者指南

Lui*_*hys 11 scala intellij-idea sbt sbt-idea

我是SBT的新手,不确定如何启动项目.有人能指出我创建Hello World类型项目的初学者指南,还是给我一些线索?

我首选的IDE是IDEA.我sbt-idea按照IDEA插件页面上的说明运行.目前我有点困惑,因为

  • 没有创建源文件夹 - 我应该在哪里/如何创建它们以及SBT将如何知道在哪里看?
  • 为什么它试图使用Scala的2.8.1,当我已经把scalaVersion := "2.9.0"build.sbt文件?这意味着IDEA无法识别object HelloWorld extends App {}.
  • 上面插件页面上的说明建议更改"运行配置(包括默认运行配置)"的"启动前"选项.列出的不同内容有13种不同的默认配置 - 哪一种要更改?我应该创建一个新的吗?这些默认配置仅适用于此项目,还是会对我不使用SBT的所有其他项目产生负面影响?

谢谢.

Nic*_*ler 16

这对我有用:

首先得到sbt和gen-idea插件...

  1. 下载sbt-launch.jar并创建脚本以启动它,如SBT Github wiki所述.
  2. 为新项目创建一个目录,例如(在linux上)〜/ myCode/myNewProject并切换到该目录
  3. 运行sbt命令.这应该下载scala库并创建一个"项目"和"目标"目录.
  4. 切换到"项目"目录.
  5. 使用以下行在此目录中创建一个新文件'build.sbt',如sbt-idea插件Github wiki中所述:

    resolvers += "sbt-idea-repo" at "http://mpeltonen.github.com/maven/"
    
    addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.0.0")
    
    Run Code Online (Sandbox Code Playgroud)
  6. 更改回主项目目录,例如〜/ myCode/myNewProject.跑sbt.它应该下载gen-idea插件.

  7. 从sbt控制台(现在应该运行),运行gen-idea命令.它应该创建IDEA项目目录.对我来说,它也会发出大量的警告.

现在获得IDEA SBT控制台插件......

  1. 打开IDEA并从插件管理器安装"SBT"插件并重新启动IDEA.(注意这是IDEA插件,而不是上面描述的sbt插件.)按照wiki(运行配置,sbt-launch.jar的位置等)的说明配置SBT插件.
  2. 在IDEA中打开新生成的IDEA项目.
  3. 将您的代码和其他内容放在预期的默认目录中,如"目录布局"下sbt wiki所述.您需要自己创建这些目录 - sbt不会自动创建它们.'src'和'test'目录应该与sbt创建的'project'和'target'目录处于同一级别.
  4. 组成一个新的'build.sbt'文件并将其放在〜/ myCode/myProject(或者你称之为的任何东西)中.由于我只是搞清楚sbt,到目前为止我很简单 - 只是提名scalatest作为依赖并使用Scala 2.9:

    name := "myProject"
    
    version := "0.1"
    
    organization := "me"
    
    libraryDependencies += "org.scalatest" % "scalatest_2.9.0" % "1.6.1"
    
    scalaVersion := "2.9.0"
    
    Run Code Online (Sandbox Code Playgroud)
  5. reload在IDEA屏幕底部的SBT控制台中输入命令.它应该为您下载scalatest和Scala 2.9.也许你也需要运行'更新'.

  • 感谢您提供详细的指南和有用的链接.可能最好将步骤5中的`build.sbt`文件放入`〜/ .sbt/plugins /`中,因为wiki建议你不必为每个项目都执行它...在Windows上你有使用命令行在`Users\yourname \\`中自己创建这个目录.无论如何,现在我根据sbt wiki中的目录布局设置了文件夹,它运行正常! (3认同)