我维护了无数tomcat实例,但现在我遇到了一个以前从未遇到过的问题。
我收到一条众所周知的日志消息,tomcat抱怨在D:\Program\Apache Software Foundation\tomcat 7.0\bin:中找不到本机lib
"基于APR的Apache Tomcat Native库在上找不到生产环境中的性能java.library.path:D:\Programme\Apache Software Foundation\Tomcat7.0\bin;[…]">
像往常一样,我将本机lib"tcnative-1.dll"放入Tomcat的bin文件夹中(是的,它位于驱动器D:!!(,但Tomcat进一步抱怨缺少本机lib。
我还尝试在启动时指定-Djava.library.path
,但没有成功。日志中没有其他可能指示启动时出现其他问题的消息。
tomcat为什么找不到本地lib?
网络上充斥着愚蠢的试错方法,tomcat文档没有明确描述在什么情况下它不在bin文件夹中使用本机lib。
其他信息:
Apache Tomcat 7.0.8
JVM 1.6.0_29-b11
检查DLL的比特大小是否与JDK的比特大小(而不是操作系统的比特大小(匹配:例如,如果您运行的是Win64,但是32位Java,请确保有一个32位DLL。
将setenv.bat创建到D:\Program\Apache Software Foundation\Tomcat 7.0\bin中,并在其中放入以下行。
set JAVA_OPTS=-Djava.library.path="D:ProgrammeApache Software FoundationTomcat 7.0bin"
这是你的工作吗?
这是一篇老文章,但我因为同样的问题浪费了很多时间。所以我想发布我对这个问题的解决方案。
第一步:将dll复制粘贴到java.path中,例如在windows C:WindowsSystem32
中
第二步:设置VM选项:-Djava.library.path="C:WindowsSystem32"
在网络中rightClick on project --> properties --> run -->fill textfield in vmOption.