I looked at the source code for both events-log and gerrit, and I don't understand why it's looking for a createQueue method that returns a ScheduledThreadPoolExecutor. The source code in events-log expects a ScheduledExecutorService, and Gerrit has a public ScheduledExecutorService createQueue(int poolsize, String queueName) method - why doesn't this work???
I also tried with the docker image (
https://hub.docker.com/r/gerritcodereview/gerrit/). Installation of the events-log plugin through plugin-manger doesn't work - it causes the button to change to FAILED (the same in my test installation). The console output only shows:
[2018-07-05 08:41:20,245] [HTTP-104] WARN com.google.gerrit.server.plugins.PluginLoader : Plugin provides its own name: <events-log>, use it instead of the input name: <events-log.jar>
Jul 05, 2018 8:41:20 AM com.google.inject.servlet.GuiceFilter setPipeline
WARNING: Multiple Servlet injectors detected. This is a warning indicating that you have more than one GuiceFilter running in your web application. If this is deliberate, you may safely ignore this message. If this is NOT deliberate however, your application may not work as expected.
If I download the events-log manually and put it in the plugins folder of the docker container, I get the same NoSuchMethodError stack trace as with my test installation.