gpt4 book ai didi

scala - SBT 0.10 和 IDEA 初学者指南

转载 作者:行者123 更新时间:2023-12-04 01:45:24 26 4
gpt4 key购买 nike

我是 SBT 的新手,不确定如何开始项目。有人可以指出我创建 Hello World 类型项目的初学者指南,或者给我一些线索吗?
我的首选 IDE 是 IDEA。我跑了sbt-idea根据 IDEA Plugins page 上的说明.目前我有点困惑,因为

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

  • 谢谢。

    最佳答案

    这对我有用:

    首先获取 sbt 和 gen-idea 插件...

  • 下载 sbt-launch.jar 并创建脚本以启动它,如 SBT Github wiki 中所述。 .
  • 为您的新项目创建一个目录,例如(在 linux 上)~/myCode/myNewProject 并切换到该目录
  • 运行 sbt命令。这应该下载 Scala 库并创建一个“项目”和“目标”目录。
  • 切换到“项目”目录。
  • 使用以下几行在此目录中创建一个新文件“build.sbt”,如 sbt-idea plugin Github wiki 中所述:
    resolvers += "sbt-idea-repo" at "http://mpeltonen.github.com/maven/"

    addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.0.0")
  • 改回您的主项目目录,例如 ~/myCode/myNewProject。运行 sbt .它应该下载 gen-idea 插件。
  • 从 sbt 控制台(现在应该正在运行),运行 gen-idea命令。它应该创建 IDEA 项目目录。对我来说,它也会发出大量警告。

  • 现在让 IDEA SBT 控制台插件运行......
  • 打开 IDEA 并从插件管理器安装“SBT”插件并重新启动 IDEA。 (注意这是IDEA插件,不是上面描述的sbt插件。)
    配置 SBT 插件 as described on its wiki (运行配置、sbt-launch.jar 的位置等)。
  • 在 IDEA 中打开新生成的 IDEA 项目。
  • sbt wiki under 'Directory Layout' 所述,将您的代码和其他内容放在预期的默认目录中。 .您需要自己创建这些目录 - sbt 不会自动创建它们。 'src' 和 'test' 目录应该与 sbt 创建的 'project' 和 'target' 目录处于同一级别。
  • 组成一个新的“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"
  • 输入 reload IDEA 屏幕底部的 SBT 控制台中的命令。它应该为您下载 Scalatest 和 Scala 2.9。也许您也需要运行“更新”。
  • 关于scala - SBT 0.10 和 IDEA 初学者指南,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7039271/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com