Java Web项目无法从Eclipse内部执行DLL文件

Java Web项目无法从Eclipse内部执行DLL文件,java,eclipse,tomcat,mapserver,Java,Eclipse,Tomcat,Mapserver,我有一个web项目,当我将该项目部署到单个tomcat时,该项目运行良好,但当我试图从Eclipse内部运行同一个项目,并且在同一个tomcat实例中,该项目不工作时,会引发以下异常: java.lang.UnsatisfiedLinkError: C:\ms4w\Apache\cgi-bin\mapscript.dll: The operating system cannot run %1 at java.lang.ClassLoader$NativeLibrary.load(N

我有一个web项目,当我将该项目部署到单个tomcat时,该项目运行良好,但当我试图从Eclipse内部运行同一个项目,并且在同一个tomcat实例中,该项目不工作时,会引发以下异常:

 java.lang.UnsatisfiedLinkError: C:\ms4w\Apache\cgi-bin\mapscript.dll:
 The operating system cannot run %1     at
 java.lang.ClassLoader$NativeLibrary.load(Native Method)    at
 java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1807)  at
 java.lang.ClassLoader.loadLibrary(ClassLoader.java:1732)   at
 java.lang.Runtime.loadLibrary0(Runtime.java:823)   at
 java.lang.System.loadLibrary(System.java:1028)     at
 edu.umn.gis.mapscript.mapscriptJNI.<clinit>(mapscriptJNI.java:26)  at
 edu.umn.gis.mapscript.mapObj.<init>(mapObj.java:283)   at
 GISExtension.GISRequest.createMapInfo(GISRequest.java:193)     at
 GISExtension.GISRequest.doPost(GISRequest.java:166)    at
 javax.servlet.http.HttpServlet.service(HttpServlet.java:637)   at
 javax.servlet.http.HttpServlet.service(HttpServlet.java:717)   at
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at
 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at
 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at
 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at
 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at
 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at
 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
    at
 org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
    at
 org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
    at
 org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:662)

有人能帮我解决上述异常吗?

您是否仔细检查了文件是否确实存在于
C:\ms4w\Apache\cgi bin\mapscript.dll
?@maba是的,它在那里,这就是为什么从单个tomcat实例来看,我指的是eclipse外部的工作,但从内部的eclipse不工作:(我想不出答案issue@j.singh您能在两种环境中发布
System.getProperty(“java.library.path”);
的结果吗?谢谢大家,通过在环境变量中添加包含DLL的文件夹,问题得以解决
String  library = System.getProperty("mapserver.library.name", "mapscript");
System.loadLibrary(library);