1. 社群外掛

社群外掛 

sbt 組織 

sbt 組織可供任何 sbt 外掛使用。將其外掛貢獻到社群組織的開發人員,仍將保留對其儲存庫及其存取權的控制權。sbt 組織的目標是將 sbt 軟體組織到一個中央位置。

為專案使用 sbt 組織的額外好處是,您可以使用 gh-pages 在 https://sbt.dev.org.tw 網域下託管網站。

sbt autoplugin giter8 範本是很好的起點。這會適當地設定新的 sbt 外掛專案。產生的 README 包含發布新社群外掛的步驟摘要。

社群 Ivy 儲存庫 

Lightbend 已提供免費的 Ivy 儲存庫供 sbt 專案使用。此 Ivy 儲存庫是從免費的 Bintray 服務鏡像而來。如果您想提交外掛,請依照下列指示:Bintray 外掛

從 sbt 0.13 跨建置外掛 

請參閱跨建置外掛

適用於 sbt 1.0 的外掛 (包括 RC-x) 

[編輯]此頁面以提交將您的外掛新增至清單的提取請求。

程式碼格式化外掛 

文件外掛 

  • tut:文件和教學產生器。
  • Laika:將 Markdown 或 reStructuredText 使用範本轉換為 HTML 或 PDF。
  • sbt-site:網站產生器。
  • sbt-microsites:使用 Jekyll 產生和發布微型網站。
  • sbt-unidoc:跨子專案建立統一的 API 文件。
  • sbt-ghpages:將產生的網站發布到 GitHub 頁面。
  • sbt-class-diagram:從 Scala 原始碼產生類別圖表。
  • sbt-api-mappings:為常見的 Scala 函式庫產生 Scaladoc apiMappings
  • literator:從您的來源產生文學風格的 markdown 文件。
  • sbt-example: 從 Scaladoc 中的範例產生 ScalaTest 測試套件。
  • sbt-delombok: delombok 包含 Lombok 註釋的 Java 來源檔案,以使 Javadoc 包含 Lombok 產生的類別和方法。
  • sbt-alldocs:將專案和依賴項的所有文件收集到單一資料夾中。
  • sbt-apidoc:將 apidocjs 移植到 sbt,以記錄 REST API。
  • sbt-github-pages (文件):以最少的努力將網站發布到 GitHub 頁面 - 非常適合 GitHub Actions。
  • sbt-docusaur (文件):使用 Docusaurus 建立網站,並以最少的努力發布到 GitHub 頁面 - 非常適合 GitHub Actions。
  • sbt-hl-compiler:編譯文件中的程式碼片段 (以保持一致性)。
  • sbt-scaladoc-compiler:編譯 Scaladoc 註解中包含的程式碼片段。

單一 jar 外掛 

發布外掛 

部署整合外掛 

  • sbt-heroku:直接將應用程式部署到 Heroku。
  • sbt-docker-compose:使用 docker compose 啟動 Docker 映像檔。
  • sbt-appengine:將您的 Web 應用程式部署到 Google App Engine。
  • sbt-marathon:使用 Marathon 框架在 Apache Mesos 上部署應用程式。
  • sbt-riotctl:直接將應用程式以 systemd 服務部署到 Raspberry Pi,並確保滿足相依性(例如 wiringpi)。
  • sbt-kind:將建置的 Docker 映像檔載入 kind 叢集。

工具和系統外掛程式 

IDE 整合外掛程式 

測試外掛程式 

  • scripted:sbt 外掛程式的整合測試。
  • sbt-jmh:從 sbt 執行 Java Microbenchmark Harness (JMH) 基準測試。
  • sbt-doctest:從 Scaladoc 註解產生並執行測試。
  • gatling-sbt:使用 Gatling 進行效能和負載測試。
  • sbt-multi-jvm:使用多個 JVM 執行測試。
  • sbt-scalaprops:scalaprops 基於屬性的測試整合。
  • sbt-testng:TestNG 框架整合。
  • sbt-jcstress:Java 並行壓力測試 (jcstress) 整合。
  • sbt-stryker4s:使用突變測試來測試您的測試。
  • sbt-cached-ci:適用於 CI 環境的增量 sbt 建置。

函式庫相依性外掛程式 

Web 和前端開發外掛程式 

資料庫外掛程式 

框架特定外掛程式 

  • sbt-newrelic:針對使用 sbt-native-packager 建置的產物提供 NewRelic 支援。
  • sbt-spark:Spark 應用程式設定器。
  • sbt-api-builder:支援從 sbt 的 Shell 內使用 ApiBuilder。

程式碼產生器外掛程式 

  • sbt-buildinfo:從 SBT 設定索引鍵產生 Scala 程式碼。
  • sbt-scalaxb:從 XML 結構描述和 WSDL 產生模型類別。
  • sbt-protobuf:protobuf 程式碼產生器。
  • sbt-header:自動產生原始程式碼檔案標頭(例如版權宣告)。
  • sbt-boilerplate:TupleX 和 FunctionX 樣板程式碼產生器。
  • sbt-avro:Apache Avro 結構描述和協定產生器。
  • sbt-aspectj:適用於 sbt 的 AspectJ 織入。
  • sbt-protoc:使用 protoc 的 protobuf 程式碼產生器。
  • sbt-contraband文件):從 GraphQL 結構描述產生虛擬案例類別。
  • sbt-antlr4:從 sbt 執行 ANTLR v4。
  • sbt-sql:從 SQL 產生模型類別。
  • sbt-partial-unification:在 Scala 中啟用部分統一支援 (SI-2712)。
  • sbt-i18n:將您的 i18n 套件轉換為 Scala 程式碼。
  • sbt-lit:使用 sbt 建置文學程式碼。
  • sbt-embedded-files:產生包含 glob 指定檔案內容的 Scala 物件(以字串或位元組陣列形式)。
  • sbt-scala-ts:根據編譯的 Scala 類型(案例類別、trait、物件...)產生 TypeScript 程式碼。

靜態程式碼分析外掛程式 

程式碼涵蓋率外掛程式 

  • sbt-scoverage:使用 Scoverage 的 Scala 程式碼涵蓋率。
  • sbt-jacoco:使用 JaCoCo 的 Scala 和 Java 程式碼涵蓋率。

建立新專案外掛程式 

  • sbt-fresh:建立有主見的新 sbt 專案。

內部外掛程式 

驗證外掛程式 

  • sbt-stainless:使用 stainless 驗證 Scala 或 Dotty 程式碼。

語言支援外掛程式 

  • sbt-frege:使用 sbt 建置 Frege 程式碼。
  • sbt-cc:使用 sbt 編譯 C 和 C++ 原始程式碼檔案。