Netbeans 7.3.2中的NoClassFound,项目上下文错误



My Netbeans java web项目使用BatchFb,因此使用Jackson。我已经包括了杰克逊映射器asl和杰克逊核心asl的罐子。

不幸的是,我无法运行它,因为当我尝试初始化FacebookBatcher的实例时,会出现ClassNotFound异常。它找不到VisibilityChecker类,即使我在资源管理器窗口中看到了它。这是我得到的完整堆栈跟踪:

 ago 11, 2013 12:46:55 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [FacebookServlet] in context with path [/Tesi]      threw exception [Servlet execution threw an exception] with root cause
 java.lang.ClassNotFoundException:   org.codehaus.jackson.map.introspect.VisibilityChecker
at   org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
at FacebookServlet.doGet(FacebookServlet.java:38)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)

我已经尝试了所有可能的步骤:我手动从web-inf/lib文件夹中删除了jar,并将它们重新放在那里,从头开始创建了一个新项目,清理和构建了n次,甚至删除netbeans缓存也无济于事,这些对我都不起作用。

我检查了jar中已编译的文件,发现有一个名为VisibilityChecker$1.class的类依赖于常规的VisibilityChecker.class。我无法打开它,因为没有源代码。我想这可能是原因,但我现在该怎么办?提前谢谢。

EDIT:我的项目名为Tesi2,在我的context.xml文件中,我有以下内容:

<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/Tesi2"/>

但我刚刚意识到,在堆栈代码中,它引用了另一个项目的clapath。("/Tesi")。我对如何解决这个问题很困惑。

哦,对不起。我引用了一个旧的servlet版本。固定的

最新更新