在 运行 时间访问 jacob-1.18-x86.dll 时出现问题
Issue in accessing jacob-1.18-x86.dll at run time
解析 jacob-1.18-x86.dll 时出现问题,无法在 运行 时间访问
我可以成功编译程序。
SEVERE: Servlet.service() for servlet dispatcher threw exception
java.lang.UnsatisfiedLinkError: no jacob-1.14.3-x64 in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at com.jacob.com.LibraryLoader.loadJacobLibrary(LibraryLoader.java:184)
at com.jacob.com.JacobObject.<clinit>(JacobObject.java:108)
Maven 依赖是:
<dependency>
<groupId>net.sf.jacob-project</groupId>
<artifactId>jacob</artifactId>
<version>${jacob.version}</version>
</dependency>
<dependency>
<groupId>net.sf.jacob-project</groupId>
<artifactId>jacob</artifactId>
<version>1.14.3</version>
<classifier>x64</classifier>
<type>dll</type>
</dependency>
您是否将 JACOB .dll 文件放入您的运行时库路径?
例如。在文件夹中:
/Java/jdk/jre/bin
和
/Java/jdk/jre/lib/ext/jacob-1.18
现在,当我添加以下文件时问题已解决:
jacob-1.14.3-x64.ddl
和 jacob-1.14.3-x84.dll
文件夹内:
/Java/jdk/jre/bin
和
/Java/jdk/jre/lib/ext
我已经通过在 System.getProperty("java.library.path")
的第一个文件夹中添加 jacob-1.19-x64.dll
文件来解决我的问题。
只是 system.out
属性 并复制文件夹中的 .dll
文件。
并非总是可以将 dll 添加到 java.library.path 的文件夹中。希望这个解决方案对其他人有帮助。
在查看 source code for loading the dll 之前,我曾为此苦苦思索过。在调用 Jacob 库中的任何方法之前添加以下代码。这将指示 Jacob 从指定路径加载 dll,而不是在 java.library.path.
中查找
System.setProperty("jacob.dll.path", "/path/to/your/jacob/jacob-1.18-x86.dll");
适用于 1.20 版。但也适用于旧版本。
解析 jacob-1.18-x86.dll 时出现问题,无法在 运行 时间访问 我可以成功编译程序。
SEVERE: Servlet.service() for servlet dispatcher threw exception
java.lang.UnsatisfiedLinkError: no jacob-1.14.3-x64 in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at com.jacob.com.LibraryLoader.loadJacobLibrary(LibraryLoader.java:184)
at com.jacob.com.JacobObject.<clinit>(JacobObject.java:108)
Maven 依赖是:
<dependency>
<groupId>net.sf.jacob-project</groupId>
<artifactId>jacob</artifactId>
<version>${jacob.version}</version>
</dependency>
<dependency>
<groupId>net.sf.jacob-project</groupId>
<artifactId>jacob</artifactId>
<version>1.14.3</version>
<classifier>x64</classifier>
<type>dll</type>
</dependency>
您是否将 JACOB .dll 文件放入您的运行时库路径? 例如。在文件夹中:
/Java/jdk/jre/bin
和
/Java/jdk/jre/lib/ext/jacob-1.18
现在,当我添加以下文件时问题已解决:
jacob-1.14.3-x64.ddl 和 jacob-1.14.3-x84.dll
文件夹内:
/Java/jdk/jre/bin 和 /Java/jdk/jre/lib/ext
我已经通过在 System.getProperty("java.library.path")
的第一个文件夹中添加 jacob-1.19-x64.dll
文件来解决我的问题。
只是 system.out
属性 并复制文件夹中的 .dll
文件。
并非总是可以将 dll 添加到 java.library.path 的文件夹中。希望这个解决方案对其他人有帮助。
在查看 source code for loading the dll 之前,我曾为此苦苦思索过。在调用 Jacob 库中的任何方法之前添加以下代码。这将指示 Jacob 从指定路径加载 dll,而不是在 java.library.path.
中查找System.setProperty("jacob.dll.path", "/path/to/your/jacob/jacob-1.18-x86.dll");
适用于 1.20 版。但也适用于旧版本。