Alright, back with the result. Sorry for the timeout once again, life’s just been busy.
I did the test in all 6 situations(3 possible provided options times 2 possible compile options: with disabling akka and without).
Short story: if you compile the application without disabling the Akka HTTP server plugin, both the Akka and Netty server jars will be on your classpath, regardless of what you provided as a setting in the commandline.
If you compile the application with .disablePlugins(PlayAkkaHttpServer)
only the Netty server jar will be on your classpath and trying to launch with akka specifically won’t work.
The output:
Without disabling Akka:
- With Akka Http Serverprovider: https://gist.github.com/KoenDG/f653ff4410a6f6bb7e4bfb10f03b55aa
- With Netty Serverprovider: https://gist.github.com/KoenDG/3a6929231b419427dbadadd5a597b774
- No ServerProvider specified: https://gist.github.com/KoenDG/898a713ebaaa181b5262705b3fb19895
With disabling Akka:
- With Akka Http Serverprovider: https://gist.github.com/KoenDG/43050b3e4f80f9bbb4530feda1176fef
- With Netty Serverprovider: https://gist.github.com/KoenDG/f1ab12b9565f9917f80a855b573d5337
- No Serverprovider specified: https://gist.github.com/KoenDG/69b79f105c0dd6931f07bcc55216b1a3
So yeah, it clearly affects how your application is loaded. Someone who forgets to disable the plugin but runs explicitly with the Netty server provider will still have the Akka Http jar loaded onto their classpath.