java - 我应该将gsdll64.dll放在Windows7和tomcat7主机中的哪里?

标签 java windows-7 tomcat7 ghostscript

我使用ghost4j GhostScript在网络应用程序中管理 TIFF 和 PDF 文件。 我使用 MavenGhost4J 包含到我的项目中,并将 Ghostscript 安装到 C:\Program Files\gs\... 但在此之后我仍然收到错误:

java.lang.UnsatisfiedLinkError: Unable to load library 'gsdll64'

要解决此问题,我必须将文件 gsdll64.dll 放置在工作目录(通常为 c:\eclipse)中,名称为 proposed here .

到目前为止,一切都很好,但是当我在集成环境(win7tomcat7)中部署应用程序时,我收到此异常:

org.springframework.web.util.NestedServletException: Handler processing failed; nested exception is java.lang.NoClassDefFoundError: Could not initialize class org.ghost4j.GhostscriptLibrary.

我将 Ghostscript 安装到主机中的 C:\Program Files\gs\... 中,如 this discussion 所示我用 try {} catch (Exception e) 包装了代码,但似乎没有帮助。

知道我应该将 gsdll64.dll 放置在哪里或如何解决该错误吗?

最佳答案

一种解决方案是将 dll 添加到 %JAVA_HOME%/jre/bin,因为它通常位于 PATH 上。

或者将包含 dll 的目录添加到 PATH,因为在 Windows 上,java.library.path 是从 PATH 环境变量初始化的。

检查this thread on StackOverflow供引用。

对于Tomcat 7,可以将gsdll64.dll复制到%TOMCAT_HOME%\bin目录或在%下创建setenv.bat TOMCAT_HOME%\bin 目录包含以下条目。

set PATH=%PATH%;C:\gs\gs9.18\bin

其中 C:\gs\gs9.18 是已安装的 Ghostscript 文件夹。对此请查看 Apache Tomcat Native Library 安装文档。

关于java - 我应该将gsdll64.dll放在Windows7和tomcat7主机中的哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34859244/

相关文章:

java - 无法解决 Jena IRIFactory 的 NoClassDefFoundError

windows - 如何告诉 Windows 更喜欢 UnxUtils 中的 find.exe 而不是 Windows 的 find?

c++ - 询问 CFSTR_PRINTERGROUP 时出现错误 DV_E_FORMATETC - Windows 7

在 tomcat 的 server.xml 配置 SSL 后,Eclipse 无法启动 tomcat 服务器

spring - 我如何区分提供 404 的 Apache Tomcat 和我在 tomcat 上返回 404 的应用程序?

java - 同一文件上的不同 log4j 模式取决于日志级别?

java - 为什么小程序的采用率如此之低?

java - Maven jar-with-dependencies 不会覆盖文件

iis-7 - 如何在 Windows 7 上将本地 IIS 公开给其他 PC?

java - Tapestry @Persist(PersistenceConstants.FLASH) 与 Tomcat 相关,但与 Jetty 无关