sbt
Zależności
Szukaj…
Dodaj zależność biblioteki zarządzanej
libraryDependency
to SettingKey
który obsługuje zależności biblioteki zarządzanej, czyli zależności, które są automatycznie pobierane i pasują do dostarczonych wersji. Aby dodać jedną zależność:
libraryDependencies += "com.typesafe.slick" %% "slick" % "3.2.0-M1"
Pierwsza część, "com.typesafe.slick"
, wskazuje pakiet biblioteki. Druga część, "slick"
, to biblioteka, o której mowa. Ostatnia część, "3.2.0-M1"
, to wersja. Ponieważ do biblioteki dołącza %%
scalaVersion
będzie wersja Scali dostarczona przez klucz ustawień scalaVersion
.
Możesz dodać wiele bibliotek jednocześnie, używając ++=
:
libraryDependencies ++= Seq(
"com.typesafe.slick" %% "slick" % "3.2.0-M1" % "compile",
"com.typesafe.slick" %% "slick-hikaricp" % "3.2.0-M1",
"mysql" % "mysql-connector-java" % "latest.release"
)
Pamiętaj o funkcjonalnej naturze Scali, która pozwala obliczyć zależności. Pamiętaj tylko, aby zwrócić Seq
:
libraryDependencies ++= {
lazy val liftVersion = "3.0-RC3" //Version of a library being used
lazy val liftEdition = liftVersion.substring(0,3) //Compute a value
Seq(
"net.liftweb" %% "lift-webkit" % liftVersion % "compile", // Use var in Seq
"net.liftmodules" %% ("ng_" + liftEdition) % "0.9.2" % "compile", // Use computed var in Seq
) // Because this is the last statement, the Seq is returned and appended to libraryDependencies
}
Dodaj repozytorium
Repozytorium to miejsce, w którym SBT szuka libraryDependencies
. Jeśli kompilacja narzeka na brak znalezienia zależności, może brakować odpowiedniego repozytorium. W ramach SBT repozytoria są wymienione w kluczu resolvers
SettingKey:
resolvers += "Flyway" at "https://flywaydb.org/repo"
Jest to zgodne ze składnią „Nazwy repozytorium” w „lokalizacji adresu URL”.
Przypnij bibliotekę do wersji projektu Scali
Jeśli Twój projekt ma to:
scalaVersion := 2.11 // Replace '2.11' with the version of Scala your project is running on
Następnie możesz użyć %%
aby automatycznie uzyskać wersję biblioteki skompilowaną z wersją Scali, której używa projekt:
libraryDependencies += "com.typesafe.slick" %% "slick" % "3.2.0-M1"
Zauważ, że posiadanie powyższych dwóch linii jest równoważne z posiadaniem tej jednej linii:
libraryDependencies += "com.typesafe.slick" % "slick_2.11" % "3.2.0-M1"
Przypnij bibliotekę do konkretnej wersji Scali
Bibliotekę można „wpi” do konkretnej wersji Scala używając %
operatora pomiędzy groupId
i artifactId
(pierwsze dwa łańcuchy w bibliotece uzależnienia). W tym przykładzie przypinamy bibliotekę z artifactId
funkcji slick
do Scali w wersji 2.10
:
libraryDependencies += "com.typesafe.slick" % "slick_2.10" % "3.2.0-M1"