java - eclipse jetty 插件跨源支持未找到类

标签 java eclipse eclipse-plugin jetty cors

我正在尝试为我的 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 中检查我的 jetty 项目的类路径配置时,我看到这个依赖项作为 maven 依赖项存在。我仍然不确定为什么 jetty 插件无法找到 org.eclipse.jetty.servlets.CrossOriginFilter 作为类路径的一部分。请帮我解决这个问题。

编辑:

看起来它不仅适用于 CORS。甚至 web.xml 中存在的其他类也会因未找到类而抛出错误。我检查了该调试配置的 jetty 类路径,并能够在那里找到这些 jar 。不确定为什么会这样。

最佳答案

那不能是你的 webapps WEB-INF/lib 目录的一部分(不支持这种方式,因为它无法访问它需要的内部服务器组件)。

在您的${jetty.base}/start.ini 中启用servlet 模块

--module=servlets

关于java - eclipse jetty 插件跨源支持未找到类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27608961/

相关文章:

java - 如何在 Windows Bitnami 堆栈上为 Solr 4.5 设置 JVM 堆大小?

java - 更新 jar 中的 .class 文件

java - 在 Maven 的测试范围内从 Eclipse 运行卡尺

java - 在eclipse和java中使用txt文件

java - Eclipse 插件自定义 View 标记数

java - 当我将鼠标悬停在自定义编辑器中的错误上时,如何显示快速修复

java - 如何从 float[] 中获取 Stream

java - Groovy/Grails Tool Suite(基于 Eclipse 的 IDE)存在严重的死锁问题

java - 检查用户是否首次使用 Firebase Auth 和数据库登录 Android 应用程序

python - Eclipse 的 Mercurial 插件找不到 Python——如何修复?