Maven依赖 - 抛出load()异常

时间:2013-03-08 19:15:13

标签: java maven hadoop

我正在使用Maven在Java中创建一个新项目。我将不得不使用Mongo和Hadoop。但是当我使用以下依赖项并尝试使用tomcat运行应用程序时:运行我得到了抛出load()异常。

依赖是

        <dependency>
            <groupId>org.mongodb</groupId>
            <artifactId>mongo-hadoop-core_1.0.2</artifactId>
            <version>1.0.0</version>
        </dependency>

,错误是:

严重:Servlet / MongoRESTApi引发了load()异常 java.lang.ClassCastException:org.apache.jasper.servlet.JspServlet无法强制转换为javax.servlet.Servlet

我该如何解决这个问题?

提前致谢

1 个答案:

答案 0 :(得分:0)

您可能遇到jar hell问题:

  

Java应用程序的开发人员或部署者偶然发现了   系统可以使用的两个不同版本的库。

mongo-hadoop-core_1.0.2依赖可能引入了进一步的传递依赖;可能是你需要exclude的第二个servlet-api 找到错误的依赖关系可能很乏味,因此我建议您在构建阶段包含JBoss Tattletale插件。配置multiplejars报告和启用 failOnWarnfailOnError。生成的报告将列出可在多个罐中找到的那些类。从这里你可以看到应该排除哪些依赖项以逃避jar地狱。