WEB-INF/lib is empty apart from a copy of
org.mortbay.jasper.apache-jsp-8.5.9.1.jar.
Remove that jar from your WEB-INF/lib, it doesn't belong there.
That's a Server jar.
0: 3.1.0 | ${jetty.base}\lib\servlet-api-3.1.jar
1: 3.1.0.M0 | ${jetty.base}\lib\jetty-schemas-3.1.jar
2: 9.4.6.v20170531 |
${jetty.base}\lib\jetty-http-9.4.6.v20170531.jar
3: 9.4.6.v20170531 |
${jetty.base}\lib\jetty-server-9.4.6.v20170531.jar
4: 9.4.6.v20170531 |
${jetty.base}\lib\jetty-xml-9.4.6.v20170531.jar
Why do all of these say `${jetty.base}`?
Have you actually setup a proper Jetty base and then copied all of the jars into place?
That's not how you are supposed to setup a ${jetty.base} directory.
That's also not how you are supposed to use Jetty Home (or the older Jetty Distribution).
Those jars should be showing up as belonging to ${jetty.home}
See:
In short, you unpack jetty-home (or the older jetty-distribution) into a new directory.
Then you leave that directory alone.
Don't edit it, modify it, remove content, add content, change content, etc...
In fact, feel free to remove all write access to that directory.
Next, you create a new jetty-base directory anywhere that isn't nested with the jetty-home directory.
Then you add the modules you want to use, in your case start with "http,webapp,deploy,jsp,annotations" (see documentation)
Then you copy your war file into place within this new jetty-base directory.
Then you start your configured instance of Jetty.