SAP Java Connector 组件介绍

简介: SAP Java Connector 组件介绍

SAP Java Connector 3.1 运行时环境由两部分组成:


sapjco3.jar - 包含 JCo 的 Java 运行时类的存档

{library prefix}sapjco3{shared library extension} - 包含 JCo 原生代码的 JNI 库

JCo 的 JNI 库包含用于网络通信的本机代码。 JCo 存档和 JNI 库之间只有松散的耦合,但是 JCo 需要 JNI 库的特定最低版本,该版本通常与分发包中的 JCo 存档一起提供。


注意:如果开发人员使用的是 32 位 JVM,则还需要 32 位 JCo JNI 库,无论是在 32 位还是 64 位操作系统上运行都是如此。


运行时初始化逻辑

当应用程序第一次引用 JCo 类时,它会被关联的类加载器(class loader)加载。


在此过程中,将执行 JCo 的静态初始化程序。该例程将使用以下算法搜索并加载 JCo JNI 库:


尝试从 sapjco3.jar 文件所在的同一目录加载 sapjco3 JNI 库。


尝试从 sapjco3.jar 文件所在的平台相关子目录加载 sapjco3 JNI 库。适当的 JNI 库加载路径是通过考虑当前使用的操作系统和 JVM 运行时环境来确定的,并引用以下子目录之一:


ntamd64,ntintel,linuxx86_64,linuxppc64le,linuxs390x,darwinintel64,rs6000_64,hpia64,sunx86_64,sun_64,os390_64,as400_pase_64


沿着 java.library.path 系统属性中定义的目录路径从左到右搜索 sapjco3 JNI 库,如果找到则从那里加载它。

注意:如果不手动设置该属性,JVM 通常会在启动时将 OS 特定的库路径环境变量设置为默认的 java.library.path 系统属性。


通过将此任务委托给它的 System.loadLibrary(String libname) 方法,让 JVM 处理 sapjco3 JNI 库的加载。


image.png


如果找不到或无法加载 sapjco3 JNI 库,您将收到 UnsatisfiedLinkError 错误,其中包含操作系统提供的详细信息。


此错误消息可能由以下原因之一引起:


  • 使用上述算法无法找到 sapjco3 JNI 库,因为您无意中将其安装到了错误的目录,或者忘记在操作系统特定的库路径环境变量或 java.library.path 系统属性中指定其目录。
  • 找到的 sapjco3 JNI 库版本太旧。
  • 发现的 sapjco3 JNI 库缺少执行权限标志。
  • 找到的 sapjco3 JNI 库的位宽与 JVM 不同(32 位与 64 位)。
  • 找到的 sapjco3 JNI 库来自不同的 JCo 发行版,不适用于您的操作系统和/或硬件处理器。
  • 找到的 sapjco3 JNI 库需要更高的操作系统版本。


相关文章
|
5月前
|
NoSQL Java 关系型数据库
Java基础教程(21)-Java连接MongoDB
【4月更文挑战第21天】MongoDB是开源的NoSQL数据库,强调高性能和灵活性。Java应用通过MongoDB Java驱动与之交互,涉及MongoClient、MongoDatabase、MongoCollection和Document等组件。连接MongoDB的步骤包括:配置连接字符串、创建MongoClient、选择数据库和集合。伪代码示例展示了如何建立连接、插入和查询数据。
|
存储 Java BI
如何使用 Java 程序通过 SAP Java Connector 调用 ABAP 系统的函数试读版
如何使用 Java 程序通过 SAP Java Connector 调用 ABAP 系统的函数试读版
|
算法 Java
SAP Java Connector 组件介绍
SAP Java Connector 组件介绍
|
SQL 存储 安全
[Java Web]JDBC->Java操作MySQL数据库(二)
[Java Web]JDBC->Java操作MySQL数据库(二)
|
SQL Oracle Java
[Java Web]JDBC->Java操作MySQL数据库(一)
[Java Web]JDBC->Java操作MySQL数据库
113 0
|
SQL 缓存 监控
[Java Web]JDBC->Java操作MySQL数据库(三)
[Java Web]JDBC->Java操作MySQL数据库(三)
|
SQL 关系型数据库 MySQL
[Java Web]JDBC综合实践->Java操作MySQL数据库(三)
[Java Web]JDBC综合实践->Java操作MySQL数据库(三)
|
SQL 存储 druid
[Java Web]JDBC综合实践->Java操作MySQL数据库(一)
[Java Web]JDBC综合实践->Java操作MySQL数据库
100 0
|
Java 关系型数据库 MySQL
[Java Web]JDBC综合实践->Java操作MySQL数据库(二)
[Java Web]JDBC综合实践->Java操作MySQL数据库(二)
|
Java Windows 容器
SAP Java Connector 的配置指南
SAP Java Connector 的配置指南
295 0
下一篇
无影云桌面