java - Java 代码找不到 nlsxbe.dll 的依赖库
问题描述
我正在尝试编写一个可以连接到我的 Lotus Notes 电子邮件客户端的 Java 代码。我一直在关注本教程编写连接到 IBM Lotus Domino 的独立 Java 代码
我已将 Notes.jar 添加到我的类路径中,并将 NLSXBE.DLL 添加到系统路径变量中。在尝试运行下面的代码时,我收到错误“java.lang.UnsatisfiedLinkError: C:\Program Files (x86)\IBM\Lotus\Notes\nlsxbe.dll: Can't finddependent libraries”
我还缺少什么?你能给我一个提示吗?
系统规格:Win10,JDK8 32位
package main;
import lotus.domino.NotesException;
import lotus.domino.NotesFactory;
import lotus.domino.NotesThread;
import lotus.domino.Session;
public class Test_Notes extends NotesThread
{
public static void main(String argv[])
{
System.load("C:/Program Files (x86)/IBM/Lotus/Notes/nlsxbe.dll");
Test_Notes t = new Test_Notes();
t.start();
}
public void runNotes() throws NotesException
{
Session s = NotesFactory.createSessionWithFullAccess();
String p = s.getPlatform();
System.out.println("Platform = " + p);
}
}
解决方案
由于您可以访问 Notes 客户端,因此请使用与客户端一起打包的 JRE 来执行您的 Java 代码 - C:\Notes\jvm
. 这为我解决了这个完全相同的问题。看起来需要的 DLL 在那里。
此外,无需执行System.load()
. -Djava.library.path=C:\Notes
您可以改为 设置 VM arg 。
推荐阅读
- wordpress - Woocommerce 通过 order-details-item.php 中的永久链接产品链接在订单概览中显示简短描述
- django - keycloak 和 social-auth-app-django :如何获取用户组
- javascript - onbeforeunload 事件未在浏览器按钮单击时触发,但在 CMD+R/F5 上工作
- c# - 文件迁移 Google 云端硬盘
- xml - 在创作对话框中,是否可以在选择组件中有所需的输入?
- mongodb - kafka mongo 连接器未按预期工作
- javascript - 如何使用散列屏蔽外部 url,使其不被抓取?
- sass - 使用 map.get() 而不是 map-get() 时出现 Gulp Sass 错误
- google-drive-api - Drive API V2:使用服务帐户为用户的 Google Drive 上的特定应用设置 useByDefault 布尔值
- sql-server - Sql 显示时间卡上的总小时数和整个月的总和