为什么SBT在安装时想要获得org.scala-sbt?

Han*_*Sun 4 java macos homebrew scala sbt

我在Mac OS上安装sbt使用brew install sbt.

build.sbt我的应用程序的文件如下所示:

import NativePackagerKeys._

packageArchetype.java_application

name := """scala-getting-started"""

version := "1.0"

scalaVersion := "2.10.4"

libraryDependencies ++= Seq(
  "com.twitter" % "finagle-http_2.10" % "6.18.0",
  "postgresql" % "postgresql" % "9.0-801.jdbc4"
)
Run Code Online (Sandbox Code Playgroud)

我真的无法理解的是,如果我想编译当前的应用程序sbt需要获取包org.scala-sbt.

Hanfeis-MacBook-Pro:scala-getting-started hanfeisun$ sbt compile stage
Getting org.scala-sbt sbt 0.13.5 ...
downloading https://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/sbt/0.13.5/jars/sbt.jar ...
    [SUCCESSFUL ] org.scala-sbt#sbt;0.13.5!sbt.jar (7322ms)
Run Code Online (Sandbox Code Playgroud)

不该org.scala-sbt当我安装已经安装sbtbrew install sbt?为什么sbt需要再次下载自己的软件包?

有没有人有这个想法?谢谢!

Ale*_*nov 7

为什么sbt需要再次下载自己的软件包?

因为您可以轻松更改SBT版本,所以它必须能够下载不同SBT版本的JAR文件.所以你实际安装的只是一个shell脚本,它知道如何检索SBT启动器,如果它还没有,以及如何启动SBT启动器.