Java 作为客户端,Spring boot应用程序中的SymmetricDS处于嵌入式模式

Java 作为客户端,Spring boot应用程序中的SymmetricDS处于嵌入式模式,java,spring-boot,symmetricds,Java,Spring Boot,Symmetricds,我有一个使用Symmetricd的Spring boot应用程序。当我想启动一个服务器和一个带有h2数据库的客户端时,两者都是在嵌入式模式下 我创建了读取的配置文件,但客户端抛出以下错误: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'postgresBulkLoaderFactory' defined in class path resource [symmetri

我有一个使用Symmetricd的Spring boot应用程序。当我想启动一个服务器和一个带有h2数据库的客户端时,两者都是在嵌入式模式下

我创建了读取的配置文件,但客户端抛出以下错误:

org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'postgresBulkLoaderFactory' defined in class path resource [symmetric-ext-points.xml]:
Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException:
Failed to instantiate [org.jumpmind.symmetric.ext.PostgresBulkDataLoaderFactory]: 
Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: 
org/springframework/jdbc/support/nativejdbc/NativeJdbcExtractor
调试时,会确保读取配置。DB是一个H2数据库,但通过调试,SymmetricDS似乎找不到H2驱动程序,它返回到使用Postgresql作为默认值

我的gradle看起来像这样:

 compile group: 'org.jumpmind.symmetric', name: 'symmetric-server', version: '3.5.19'
 compile group: 'org.jumpmind.symmetric', name: 'symmetric-client', version: '3.5.19'
 compile group: 'org.jumpmind.symmetric', name: 'symmetric-core', version: '3.5.19'

为什么它不能使用我的H2数据库?检查maven repository core应该有h2驱动程序,但仍然会抛出错误。

org.springframework.jdbc.support.nativejdbc.nativejdbextractor
不在类路径上。我建议尝试在依赖项列表中添加一个包含此类的Spring jar,例如:

为什么要使用如此旧版本的SymmetricDS?最新版本为3.11.8

当我嵌入SymmetricDS时,我排除了可能干扰Spring Boot提供的依赖项的依赖项。例如:

compile ("org.jumpmind.symmetric:symmetric-server:$symmetricVersion") {
     exclude group: 'org.slf4j'
     exclude group: 'com.mangofactory', module: 'swagger-springmvc'
     exclude group: 'org.springframework'
     exclude group: 'net.java.dev.jna'
}
这适用于以下版本的Spring Boot和Spring:

springBootVersion=2.1.3.RELEASE
springVersion=5.1.5.RELEASE
如果您感兴趣,这里有一个我们如何在Spring Boot中嵌入Symmetricd的示例:


我还有以下依赖项:编译组:'org.springframework',名称:'springjdbc',版本:'5.2.6.release这是最新版本,可以找到maven/gradle依赖项