This plugin is intended to extend the sbt-paradox plugin with some settings along with providing the Apache Pekko theme.
It is intended as a shared doc theme for the Apache Pekko umbrella of projects, and not as a public theme to use on "any" project.
The project intentionally supports JDK 1.8 by default since its built against sbt-paradox/sbt-paradox-theme 0.9.2 so you can just include it like this
addSbtPlugin("org.apache.pekko" % "sbt-paradox-pekko" % "<version>")
NOTE: If you happen to be using sbt-paradox plugins aside from
- sbt-web
- sbt-paradox-apidoc
- sbt-paradox-project-info you need to use an
excludesAll
statement onaddSbtPlugin
to remove the resolved dependencies that rely on JDK 11+, i.e. if you need to use sbt-site-paradox you would do the followingaddSbtPlugin(("com.github.sbt" % "sbt-site-paradox" % "1.5.0").excludeAll( "com.lightbend.paradox", "sbt-paradox"))
With JDK 11 or later you need to explicitly override the sbt-paradox/sbt-paradox-theme versions to use the 10.6.x (or newer) series, i.e.
addSbtPlugin("org.apache.pekko" % "sbt-paradox-pekko" % "<version>")
addSbtPlugin("com.lightbend.paradox" % "sbt-paradox" % "0.10.6")
addSbtPlugin("com.lightbend.paradox" % "sbt-paradox-theme" % "0.10.6")
Enable it instead of the upstream ParadoxPlugin:
import org.apache.pekko.PekkoParadoxPlugin
enablePlugins(PekkoParadoxPlugin)
For more settings refer to the Paradox documentation
When you have made changes to pekko-sbt-paradox, you can test it locally with:
sbt publishLocal sbtPlugin/scripted
This should show:
Pausing in /tmp/sbt_e457458e/simple
Press enter to continue.
build.sbt
in this directory)sbt compile
compiles the main source for project default version of Scala (2.13)sbt test
will compile the code and run the unit testssbt package
will build the jars
plugin/target/scala-2.12/sbt-1.0/
sbt publishLocal
will push the jars to your local Apache Ivy repositorysbt publishM2
will push the jars to your local Apache Maven repositorysbt sourceDistGenerate
will generate source release to target/dist/
sbt "set ThisBuild / version := \"1.0.0\"; sourceDistGenerate"
version.sbt
to the same directory that has the build.sbt
containing something like
ThisBuild / version := "1.0.0"
There are several ways to interact with the Pekko community: