【问题标题】:Absurd ClassCastException using maven-jetty-plugin使用 maven-jetty-plugin 的荒谬 ClassCastException
【发布时间】:2012-09-07 19:40:25
【问题描述】:

有谁知道是什么导致了下面的ClassCastException: org.eclipse.jetty.server.Request cannot be cast to org.eclipse.jetty.server.Request

当我尝试时,这发生在我的HttpServletdoGet(HttpServletRequest req, ..) 内:Request baseRequest = (Request) req;

<plugin>
    <groupId>org.mortbay.jetty</groupId>
    <artifactId>jetty-maven-plugin</artifactId>
    <version>8.1.5.v20120716</version>
    <configuration>
        <jettyXml>src/main/webapp/WEB-INF/jetty.xml</jettyXml>
        <connectors>
            <connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector">
                <port>8081</port>
            </connector>
        </connectors>
            <stopPort>18080</stopPort>
            <stopKey>STOP</stopKey>
        </configuration>
        <dependencies>
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>5.1.13</version>
            </dependency>
        </dependencies>
</plugin>

【问题讨论】:

  • 你有没有检查运行时的jar和编译时的jar是否不同?
  • 一切都应该是一样的,因为我在本地使用码头插件运行它。我该如何验证这一点?

标签: maven servlets jetty classcastexception maven-jetty-plugin


【解决方案1】:

您需要确保 jetty-server 未打包为实际应用程序的一部分;这通常通过将范围设置为提供来完成:

<dependency>
    <groupId>org.eclipse.jetty</groupId>
    <artifactId>jetty-server</artifactId>
    <version>${jetty.version}</version>
    <scope>provided</scope>
</dependency>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-04
    • 1970-01-01
    • 1970-01-01
    • 2015-06-06
    • 2017-05-18
    • 1970-01-01
    相关资源
    最近更新 更多