Service loader didn't find a SpiContainerFactory?

301 views
Skip to first unread message

Net Wolf

unread,
Mar 14, 2019, 3:37:55 AM3/14/19
to Ebean ORM
Hi.

A couple of years ago, I attempted to get eBean working inside TeamCity. I posted a question about finding the EBeanServer from within their plugin classpath.
I had it working, but never got the project completed. I've picked it up again, and updated to the new Ebean versions.

Now, when I start my plugin (based on spring), I am getting the error... "Service loader didn't find a SpiContainerFactory?"
It's from the createContainer method in EbeanServerFactory.

It's interesting that it runs OK in tests, but fails to find a SpiContainerFactory when searching via ServiceLoader.load
I don't know anything about the ServiceLoader pattern, but am wondering how I add one to the classpath?

Bearing in mind that there is some quirkery with classpaths inside a TeamCity plugin, so it's most likely that, but I thought I'd ask in case I was missing something obvious.
Here is a refresher on how we resolved it last time... https://groups.google.com/d/topic/ebean/8PBPHEAAHGc/discussion

However, that doesn't seem to work for me now in 11.35.3

In case you want to have a poke about, the code is here:

Many thanks in advance.

Net Wolf.

Net Wolf

unread,
Mar 14, 2019, 7:02:26 AM3/14/19
to Ebean ORM
I believe this is a change in TeamCity and not in Ebean.

Rolling back to an older version of TeamCity gets me further into the plugin bootstrapping process.

Sorry to have wasted anyone's time.

Cheers, Net Wolf.

Net Wolf

unread,
Mar 14, 2019, 3:25:21 PM3/14/19
to Ebean ORM
It's working on an old version of TeamCity with ebean 11.
I will raise a ticket with Jetbrains to ask what has changed.
Reply all
Reply to author
Forward
0 new messages