依照 安裝 頁面,使用 Coursier 安裝 Scala。這應該會安裝最新穩定版本的 sbt
。
若要安裝 JDK 和 sbt,請考慮使用 SDKMAN。
$ sdk install java $(sdk list java | grep -o "\b8\.[0-9]*\.[0-9]*\-tem" | head -1)
$ sdk install sbt
使用 Coursier 或 SDKMAN 有兩個優點。
tgz
封裝。(DEB 和 RPM 套件不會為了節省頻寬)您必須先安裝 JDK。我們建議使用 Eclipse Adoptium Temurin JDK 8、JDK 11 或 JDK 17。
套件名稱的詳細資訊因發行版本而異。例如,Ubuntu xenial (16.04LTS) 具有 openjdk-8-jdk。Redhat 系列將其稱為 java-1.8.0-openjdk-devel。
DEB 套件由 sbt 官方支援。
Ubuntu 和其他 Debian 型發行版使用 DEB 格式,但通常您不會從本機 DEB 檔案安裝軟體。相反地,它們隨附命令列 (例如 apt-get
、aptitude
) 或圖形使用者介面 (例如 Synaptic) 的套件管理員。從終端機執行以下指令以安裝 sbt
(您需要超級使用者權限才能執行此操作,因此使用 sudo
)。
sudo apt-get update
sudo apt-get install apt-transport-https curl gnupg -yqq
echo "deb https://repo.scala-sbt.org/scalasbt/debian all main" | sudo tee /etc/apt/sources.list.d/sbt.list
echo "deb https://repo.scala-sbt.org/scalasbt/debian /" | sudo tee /etc/apt/sources.list.d/sbt_old.list
curl -sL "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x2EE0EA64E40A89B84B2DF73499E82A75642AC823" | sudo -H gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/scalasbt-release.gpg --import
sudo chmod 644 /etc/apt/trusted.gpg.d/scalasbt-release.gpg
sudo apt-get update
sudo apt-get install sbt
套件管理員會檢查許多已設定的儲存庫,以提供要安裝的套件。您只需要將儲存庫新增至套件管理員會檢查的位置即可。
安裝 sbt
後,您可以在更新其套件快取後於 aptitude
或 Synaptic 中管理該套件。您也應該能夠在「系統設定」->「軟體與更新」->「其他軟體」中,於清單底部看到新增的儲存庫。
注意:有人回報使用 Ubuntu 時發生 SSL 錯誤:Server access Error: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty url=https://repo1.maven.org/maven2/org/scala-sbt/sbt/1.1.0/sbt-1.1.0.pom
,這顯然源自 OpenJDK 9 將 PKCS12 格式用於 /etc/ssl/certs/java/cacerts
cert-bug。根據 https://stackoverflow.com/a/50103533/3827,它已在 Ubuntu Cosmic (18.10) 中修復,但 Ubuntu Bionic LTS (18.04) 仍在等待發行版本。請參閱解答中的變通方法。
注意:sudo apt-key adv --keyserver hkps://keyserver.ubuntu.com:443 --recv 2EE0EA64E40A89B84B2DF73499E82A75642AC823
可能無法在 Ubuntu Bionic LTS (18.04) 上運作,因為它使用的是有問題的 GnuPG,因此我們建議使用 Web API 下載上述公鑰。
RPM 套件由 sbt 官方支援。
Red Hat Enterprise Linux 和其他 RPM 型發行版使用 RPM 格式。從終端機執行以下指令以安裝 sbt
(您需要超級使用者權限才能執行此操作,因此使用 sudo
)。
# remove old Bintray repo file
sudo rm -f /etc/yum.repos.d/bintray-rpm.repo
curl -L https://sbt.dev.org.tw/sbt-rpm.repo > sbt-rpm.repo
sudo mv sbt-rpm.repo /etc/yum.repos.d/
sudo yum install sbt
在 Fedora (31 及更新版本) 上,使用 sbt-rpm.repo
# remove old Bintray repo file
sudo rm -f /etc/yum.repos.d/bintray-rpm.repo
curl -L https://sbt.dev.org.tw/sbt-rpm.repo > sbt-rpm.repo
sudo mv sbt-rpm.repo /etc/yum.repos.d/
sudo dnf install sbt
注意:請將這些問題回報給 sbt 專案。
官方樹狀結構包含 sbt 的 ebuilds。若要安裝最新的可用版本,請執行
emerge dev-java/sbt