我正在尝试使用opencv 2.4.9。在带有 NetBeans 的 Java Servlet 中,我有两个文件 - 第一个是 Servlet java 文件 Login.java ,由 index.html 调用,第二个是CamCap.java 一个包含所有 opencv 导入的 java 文件,但该文件位于同一个包中,我正在从第一个 java 文件调用第二个 java 文件的函数。这两个文件作为 java 项目单独运行良好,但是当我尝试运行完整的 servlet 项目时,它会抛出此
错误 - (java.lang.NoClassDefFoundError: org/opencv/core/Core)
怎么解决这个问题!!
最佳答案
您需要使您的 OpenCV jar 可用于 IDE 和应用程序服务器。我相信您已经通过将其添加到您的 Web 项目的类路径中,使其可供您的 IDE 使用。
现在,为了满足在应用程序服务器上运行时的依赖关系,只需将 jar 复制到您的 Web 项目的 /WEB-INF/lib
目录,构建您的 war
并再次部署。
我建议您始终先将依赖项复制到 /WEB-INF/lib
,然后将其添加到项目的类路径。这可以解决此类错误,并确保 IDE 和应用程序服务器使用相同版本的 jar。
关于java.lang.NoClassDefFoundError : org/opencv/core/Core - Java Servlet + OpenCV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30956681/