无法获取 Derby 10.15 的驱动程序实例

Failed to get driver instance for Derby 10.15

将 Java 12 maven 项目升级到 Apache Derby 10.15 后,数据库单元测试开始失败:

Failed to get driver instance for jdbcUrl=jdbc:derby:memory:myDB;create=true
java.lang.RuntimeException: Failed to get driver instance for jdbcUrl=jdbc:derby:memory:myDB;create=true 

我该如何解决这个问题?

根据 Apache Derby 10.15.1.3 的 Release Notes

Derby has been re-packaged as a set of JPMS modules. This introduced a new jar file, derbyshared.jar, required by all configurations.

derbyshared.jar 是包含跨模块支持实用程序的公共模块。

要解决此问题,请添加 derbyshared maven 依赖项:

<dependency>
  <groupId>org.apache.derby</groupId>
  <artifactId>derbyshared</artifactId>
  <version>10.15.1.3</version>
</dependency>

Derby 10.15.2.0 更新(2020 年 3 月)

根据release notes for version 10.15.2.0 the maven dependency issue has been fixed in DERBY-7040票。

解决问题更新 derby 版本:

10.15.2.0