Sorry, I have no direct answers.
I stopped using jetty-runner in the early Jetty 7 days (late 2008-ish)
Barely used it then.
Seeing as I had a hand in getting the JSR-356 support into Jetty, I decided to look into jetty-runner ...
Yeah, it has no integrated JSR-356 support built-in.
Jetty runner just simply doesn't have everything built-in, as that would be ridiculous and often contradictory/conflicting.
Your options at this point:
- Manage a classpath, add the missing jars - javax-websocket-client-impl-{version}.jar, javax-websocket-server-impl-{version}.jar, and javax.websocket-api-1.0.jar.
- Build your own jetty-runner with those integrated
- Use jetty-maven-plugin to launch jetty with your webapp maven build (testing only! not for production)
- Use gradle's jetty plugins to launch jetty with your webapp's gradle build (testing only! not for production)
- Use the jetty-distribution and the start.jar, along with the {jetty.home} vs {jetty.base} separation
- Your project directory becomes a {jetty.base}, your {jetty.home} is a different directory with your as-is (unmodified) jetty-distribution. At bare minimum it will mean a single start.ini file in your project directory.
- Build your project to utilize embedded-jetty techniques
- You can make it an uberjar with everything included (jetty + your webapp)
- You can make your war file self-executable, capable of launching an embedded jetty itself (included in your war)
- You can make an embedded-jetty launcher of your own design (as an uber-jar) to deploy and number of webapps you want.