【发布时间】:2015-02-20 22:08:29
【问题描述】:
我正在尝试为我的 Web 应用程序使用跨域过滤器支持。我正在使用 eclipse jetty 插件从 eclipse 中调试它。当我通过控制台运行课程时,使用 mvn jetty:run,我总是得到正确的响应。但是当我使用我的 jetty eclipse 插件运行它时,我得到 Class not found 异常。
java.lang.ClassNotFoundException: org.eclipse.jetty.servlets.CrossOriginFilter
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:421)
at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:383)
at org.eclipse.jetty.util.Loader.loadClass(Loader.java:100)
我的 pom.xml 中有以下依赖项:
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-servlets</artifactId>
<version>9.2.5.v20141112</version>
</dependency>
当我在 Eclipse 中检查我的码头项目的类路径配置时,我看到这个依赖项以 maven 依赖项的形式出现。我仍然不确定为什么码头插件无法找到 org.eclipse.jetty.servlets.CrossOriginFilter 作为类路径的一部分。请帮我解决这个问题。
编辑:
看起来它不仅适用于 CORS。甚至 web.xml 中存在的其他类也会为未找到的类抛出错误。我检查了该调试配置的码头类路径,并能够在其中找到这些 jar。不知道为什么会这样。
【问题讨论】:
标签: java eclipse eclipse-plugin jetty cors