This repository contains these components:
sbt-plugin
- The main sbt pluginrunner
- The runtime entrypoint, cross-compiled for different Play and Scala versionstest-plugin
- Extra testing utilities used inscripted
tests (not published)
Here's how this plugin works:
- The sbt plugin picks an appropriate runner based on the current application's Play and Scala version
- The sbt plugin constructs a ClassLoader containing the application's classpath and the runner's classpath
- The sbt plugin calls the runner's entrypoint
- The runner generates a Swagger spec, by reflecting over the application's routes and models
- The sbt plugin adds the generated
swagger.json
as a managed resource
test
– Runs the unit testsscripted
– Runs sbt script tests