加载本机库 db2jcct2 失败
Posted
技术标签:
【中文标题】加载本机库 db2jcct2 失败【英文标题】:Failure in loading native library db2jcct2 【发布时间】:2019-06-17 10:35:11 【问题描述】:我有一个使用 Cassandra 和 DB2 数据库的 Spring Boot 应用程序。 我将所需的配置添加到 application.yml 文件中。
注意:我的 Cassandra 和 DB2 数据库是远程的(不是本地的)。
这是我在 yaml 文件中的内容:
spring:
datasource:
url: jdbc:db2://myRemoteHost:portNumber/MyDBName
username: username
password: password
driver-class-name: com.ibm.db2.jcc.DB2Driver
jpa:
properties:
hibernate:
dialect: org.hibernate.dialect.DB2Dialect
data:
cassandra:
cluster-name: cluster name
keyspace-name: keyspace name
port: myPortNumber
contact-points: host1.com
username: username
password: password
这是我在应用程序中使用的依赖项:
compile group: 'com.ibm.db2.jcc', name: 'db2jcc', version: 'db2jcc4'
当我运行应用程序时,出现以下错误:
Caused by: com.ibm.db2.jcc.am.SqlException: [jcc][10389][12245][4.25.13]
Failure in loading native library db2jcct2, java.lang.UnsatisfiedLinkError:
no db2jcct2 in java.library.path: ERRORCODE=-4472, SQLSTATE=null
【问题讨论】:
【参考方案1】:您的应用程序似乎尝试使用类型 2 连接。你应该让它使用类型 4 之一。
Failure in loading native library db2jcct2, UnsatisfiedLinkError: ERRORCODE=-4472
【讨论】:
是的,应用程序使用的是类型 2 连接而不是类型 4。这是因为 build.gradle 文件中使用了一些依赖项。就我而言,我只是删除了这些依赖项,因为我不需要它们。在其他一些情况下,我们可以只排除连接依赖而不是删除整个依赖。以上是关于加载本机库 db2jcct2 失败的主要内容,如果未能解决你的问题,请参考以下文章
Mediapipe 跟踪 AAR 构建失败:按架构过滤 AAR 本机库失败
Xamarin.Android Java绑定库运行时失败访问本机库
VC++ 解决dll库动态库加载失败问题(调用LoadLibrary加载失败)(附源码)
libGDX / roboVM:如何修复“已在另一个类加载器中加载的本机库libhfscompressor.dylib”?