Oh, I reproduced the issue on my end and sorry about the imprecise information.
"drools-engine-classic" includes "drools-commands", but "drools-engine" doesn't.
If you use "drools-engine", please explicitly add a dependency "drools-commands" as well.
<dependency>
<groupId>org.drools</groupId>
<artifactId>drools-commands</artifactId>
</dependency>
I filed a JIRA for "drools-engine" to include "drools-commands" for future versions.
https://issues.redhat.com/browse/DROOLS-7349
> But, as I noticed today, the function 'getCommands()' inside KieServices, is changed in the latest versions to this:
>
> public KieCommands getCommands() {
> return (KieCommands)KieService.load(KieCommands.class);
> }
Yes, it loads KieCommands implementation using ServiceLoader. If drools-commands jar is on the classpath, it should load the impl --- "CommandFactoryServiceImpl".
If you still have the issue, please share a reproducer.
Thanks,
Toshiya