Spark集成 hadoop,hbase 的 maven衝突

Spark和Hadoop、HBase集成,使用Maven管理依賴的時候需要考慮包的兼容性:

報錯:java.lang.SecurityException: class "javax.servlet.FilterRegistration"'s signer information does notmatch signer information of other classes in the same package

 

  三個依賴有衝突:

         spark-core: org.eclipse.jetty.orbit:javax.servlet

         hbase-server:org.mortbay.jetty:servlet-api-2.5

         hadoop-client:javax.servlet:servlet-api

  解決方案:

    直接在maven的pom.xml文件中使用exclusions元素將衝突包進行去除

    直接在hadoop-client和hbase-server中進行去除就可以了

    注意:不要把org.eclipse.jetty.orbit:javax.servlet這個依賴去除了

 <dependency>

            <groupId>org.apache.hbase</groupId>

            <artifactId>hbase-server</artifactId>

            <version>${hbase.version}</version>

            <exclusions>

                <exclusion>

                    <artifactId>servlet-api-2.5</artifactId>

                    <groupId>org.mortbay.jetty</groupId>

                </exclusion>

            </exclusions>

        </dependency>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章