Maven依赖,不同jar包里相同的类名导致的大问题

架构是这样的:
用Maven控制:obs和mobile依赖common。

完整的pom依赖配置
parent的pom.xml


    <dependencies>

        <dependency>
            <groupId>com.belerwebgroupId>
            <artifactId>pinyin4jartifactId>
        dependency>


        
        <dependency>
            <groupId>junitgroupId>
            <artifactId>junitartifactId>
            <scope>compilescope>
        dependency>
        <dependency>
            <groupId>org.hamcrestgroupId>
            <artifactId>hamcrest-allartifactId>
            <scope>testscope>
        dependency>
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-testartifactId>
            <scope>compilescope>
        dependency>

        <dependency>
            <groupId>org.mockitogroupId>
            <artifactId>mockito-allartifactId>
            <scope>testscope>
        dependency>

        
        <dependency>
            <groupId>org.modelmappergroupId>
            <artifactId>modelmapperartifactId>
        dependency>

        <dependency>
            <groupId>com.google.guavagroupId>
            <artifactId>guavaartifactId>
        dependency>

        <dependency>
            <groupId>antlrgroupId>
            <artifactId>antlrartifactId>
        dependency>

        <dependency>
            <groupId>aopalliancegroupId>
            <artifactId>aopallianceartifactId>
        dependency>
        <dependency>
            <groupId>org.aspectjgroupId>
            <artifactId>aspectjrtartifactId>
        dependency>
        <dependency>
            <groupId>org.aspectjgroupId>
            <artifactId>aspectjweaverartifactId>
        dependency>
        <dependency>
            <groupId>org.bouncycastlegroupId>
            <artifactId>bcprov-jdk15onartifactId>
        dependency>
        <dependency>
            <groupId>commons-beanutilsgroupId>
            <artifactId>commons-beanutilsartifactId>
            <exclusions>
                <exclusion>
                    <groupId>commons-logginggroupId>
                    <artifactId>commons-loggingartifactId>
                exclusion>
            exclusions>
        dependency>
        <dependency>
            <groupId>commons-codecgroupId>
            <artifactId>commons-codecartifactId>
        dependency>
        <dependency>
            <groupId>commons-collectionsgroupId>
            <artifactId>commons-collectionsartifactId>
        dependency>
        <dependency>
            <groupId>commons-digestergroupId>
            <artifactId>commons-digesterartifactId>
        dependency>
        <dependency>
            <groupId>org.apache.commonsgroupId>
            <artifactId>commons-emailartifactId>
        dependency>
        <dependency>
            <groupId>commons-fileuploadgroupId>
            <artifactId>commons-fileuploadartifactId>
        dependency>
        <dependency>
            <groupId>commons-httpclientgroupId>
            <artifactId>commons-httpclientartifactId>
        dependency>
        <dependency>
            <groupId>commons-iogroupId>
            <artifactId>commons-ioartifactId>
        dependency>
        <dependency>
            <groupId>commons-langgroupId>
            <artifactId>commons-langartifactId>
        dependency>
        <dependency>
            <groupId>org.apache.commonsgroupId>
            <artifactId>commons-lang3artifactId>
        dependency>
        <dependency>
            <groupId>commons-poolgroupId>
            <artifactId>commons-poolartifactId>
        dependency>
        <dependency>
            <groupId>org.apache.commonsgroupId>
            <artifactId>commons-pool2artifactId>
        dependency>
        <dependency>
            <groupId>dom4jgroupId>
            <artifactId>dom4jartifactId>
        dependency>

        
        <dependency>
            <groupId>org.ehcachegroupId>
            <artifactId>ehcacheartifactId>
        dependency>

        <dependency>
            <groupId>net.sf.ezmorphgroupId>
            <artifactId>ezmorphartifactId>
        dependency>
        <dependency>
            <groupId>org.freemarkergroupId>
            <artifactId>freemarkerartifactId>
        dependency>
        <dependency>
            <groupId>com.google.code.gsongroupId>
            <artifactId>gsonartifactId>
        dependency>
        <dependency>
            <groupId>com.alibabagroupId>
            <artifactId>druidartifactId>
        dependency>
        
        <dependency>
            <groupId>org.hibernategroupId>
            <artifactId>hibernate-coreartifactId>
        dependency>
        <dependency>
            <groupId>org.hibernategroupId>
            <artifactId>hibernate-entitymanagerartifactId>
        dependency>
        <dependency>
            <groupId>org.hibernategroupId>
            <artifactId>hibernate-ehcacheartifactId>
        dependency>
        <dependency>
            <groupId>org.hibernategroupId>
            <artifactId>hibernate-commons-annotationsartifactId>
        dependency>
        <dependency>
            <groupId>org.hibernate.javax.persistencegroupId>
            <artifactId>hibernate-jpa-2.0-apiartifactId>
        dependency>
        <dependency>
            <groupId>org.hibernategroupId>
            <artifactId>hibernate-validatorartifactId>
        dependency>
        <dependency>
            <groupId>org.apache.httpcomponentsgroupId>
            <artifactId>httpclientartifactId>
        dependency>
        <dependency>
            <groupId>org.apache.httpcomponentsgroupId>
            <artifactId>httpcoreartifactId>
        dependency>

        <dependency>
            <groupId>org.mnode.ical4jgroupId>
            <artifactId>ical4jartifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.codehaus.groovygroupId>
                    <artifactId>groovy-allartifactId>
                exclusion>
                <exclusion>
                    <groupId>biz.aQute.bndgroupId>
                    <artifactId>bndlibartifactId>
                exclusion>
            exclusions>
        dependency>


        <dependency>
            <groupId>com.fasterxml.jackson.coregroupId>
            <artifactId>jackson-annotationsartifactId>
        dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.coregroupId>
            <artifactId>jackson-coreartifactId>
        dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.coregroupId>
            <artifactId>jackson-databindartifactId>
        dependency>


        <dependency>
            <groupId>javaxgroupId>
            <artifactId>javaee-apiartifactId>
            <scope>providedscope>
        dependency>

        <dependency>
            <groupId>org.javassistgroupId>
            <artifactId>javassistartifactId>
        dependency>

        
        <dependency>
            <groupId>org.slf4jgroupId>
            <artifactId>jcl-over-slf4jartifactId>
        dependency>

        <dependency>
            <groupId>net.sf.json-libgroupId>
            <artifactId>json-libartifactId>
            <version>2.4version>
            <classifier>jdk15classifier>
        dependency>
        <dependency>
            <groupId>javax.servletgroupId>
            <artifactId>jstlartifactId>
        dependency>

        <dependency>
            <groupId>javax.servletgroupId>
            <artifactId>javax.servlet-apiartifactId>
            <scope>providedscope>
        dependency>

        <dependency>
            <groupId>javax.transactiongroupId>
            <artifactId>jtaartifactId>
        dependency>

        <dependency>
            <groupId>com.github.pengglegroupId>
            <artifactId>kaptchaartifactId>
        dependency>

        <dependency>
            <groupId>log4jgroupId>
            <artifactId>log4jartifactId>
        dependency>
        <dependency>
            <groupId>javax.mailgroupId>
            <artifactId>javax.mail-apiartifactId>
        dependency>
        <dependency>
            <groupId>mysqlgroupId>
            <artifactId>mysql-connector-javaartifactId>
        dependency>

        
        <dependency>
            <groupId>org.apache.poigroupId>
            <artifactId>poiartifactId>
        dependency>
        <dependency>
            <groupId>org.apache.poigroupId>
            <artifactId>poi-ooxmlartifactId>
        dependency>
        <dependency>
            <groupId>org.apache.poigroupId>
            <artifactId>poi-ooxml-schemasartifactId>
        dependency>
        <dependency>
            <groupId>org.apache.shirogroupId>
            <artifactId>shiro-allartifactId>
        dependency>
        <dependency>
            <groupId>org.slf4jgroupId>
            <artifactId>slf4j-apiartifactId>
        dependency>
        <dependency>
            <groupId>org.slf4jgroupId>
            <artifactId>slf4j-log4j12artifactId>
        dependency>

        
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-coreartifactId>
            <exclusions>
                <exclusion>
                    <groupId>commons-logginggroupId>
                    <artifactId>commons-loggingartifactId>
                exclusion>
            exclusions>
        dependency>
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-beansartifactId>
        dependency>
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-contextartifactId>
        dependency>
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-aopartifactId>
        dependency>
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-aspectsartifactId>
        dependency>
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-expressionartifactId>
        dependency>
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-webartifactId>
        dependency>
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-webmvcartifactId>
        dependency>
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-websocketartifactId>
        dependency>

        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-txartifactId>
        dependency>
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-context-supportartifactId>
        dependency>
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-ormartifactId>
        dependency>
        
        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-jdbcartifactId>
        dependency>
        

        <dependency>
            <groupId>org.springframeworkgroupId>
            <artifactId>spring-jmsartifactId>
        dependency>

        
        <dependency>
            <groupId>net.spygroupId>
            <artifactId>spymemcachedartifactId>
        dependency>

        <dependency>
            <groupId>staxgroupId>
            <artifactId>stax-apiartifactId>
        dependency>

        <dependency>
            <groupId>javax.validationgroupId>
            <artifactId>validation-apiartifactId>
        dependency>

        <dependency>
            <groupId>org.apache.xmlbeansgroupId>
            <artifactId>xmlbeansartifactId>
        dependency>


        <dependency>
            <groupId>com.google.zxinggroupId>
            <artifactId>coreartifactId>
        dependency>
        <dependency>
            <groupId>com.google.zxinggroupId>
            <artifactId>javaseartifactId>
        dependency>

    dependencies>

    
    <dependencyManagement>
        <dependencies>

            
            <dependency>
                <groupId>org.modelmappergroupId>
                <artifactId>modelmapperartifactId>
                <version>${modelmapper.version}version>
            dependency>

            <dependency>
                <groupId>com.alibabagroupId>
                <artifactId>druidartifactId>
                <version>${druid.version}version>
            dependency>
            
            <dependency>
                <groupId>org.quartz-schedulergroupId>
                <artifactId>quartzartifactId>
                <version>${quartz.version}version>
            dependency>

                   
            <dependency>
                <groupId>junitgroupId>
                <artifactId>junitartifactId>
                <version>${junit.version}version>
            dependency>

            <dependency>
                <groupId>org.mockitogroupId>
                <artifactId>mockito-allartifactId>
                <version>1.9.5version>
                <scope>testscope>
            dependency>

            <dependency>
                <groupId>org.hamcrestgroupId>
                <artifactId>hamcrest-allartifactId>
                <version>1.3version>
                <scope>testscope>
            dependency>

            <dependency>
                <groupId>com.google.guavagroupId>
                <artifactId>guavaartifactId>
                <version>${guava.version}version>
            dependency>
            <dependency>
                <groupId>com.smartprint.biztripgroupId>
                <artifactId>smartprint-commonartifactId>
                <version>${smartprint.version}version>
            dependency>
            <dependency>
                <groupId>com.smartprint.biztripgroupId>
                <artifactId>amsartifactId>
                <version>${smartprint.version}version>
            dependency>
            <dependency>
                <groupId>com.smartprint.biztripgroupId>
                <artifactId>obsartifactId>
                <version>${smartprint.version}version>
            dependency>

            <dependency>
                <groupId>com.smartprint.biztripgroupId>
                <artifactId>common-baseartifactId>
                <version>${smartprint.version}version>
            dependency>

            <dependency>
                <groupId>antlrgroupId>
                <artifactId>antlrartifactId>
                <version>2.7.6version>
            dependency>

            <dependency>
                <groupId>aopalliancegroupId>
                <artifactId>aopallianceartifactId>
                <version>1.0version>
            dependency>
            <dependency>
                <groupId>org.aspectjgroupId>
                <artifactId>aspectjrtartifactId>
                <version>1.7.4version>
            dependency>
            <dependency>
                <groupId>org.aspectjgroupId>
                <artifactId>aspectjweaverartifactId>
                <version>1.7.4version>
            dependency>
            <dependency>
                <groupId>org.bouncycastlegroupId>
                <artifactId>bcprov-jdk15onartifactId>
                <version>1.47version>
            dependency>
            <dependency>
                <groupId>commons-beanutilsgroupId>
                <artifactId>commons-beanutilsartifactId>
                <version>1.8.3version>
            dependency>
            <dependency>
                <groupId>commons-codecgroupId>
                <artifactId>commons-codecartifactId>
                <version>1.7version>
            dependency>

            <dependency>
                <groupId>commons-collectionsgroupId>
                <artifactId>commons-collectionsartifactId>
                <version>3.2.1version>
            dependency>
            <dependency>
                <groupId>commons-digestergroupId>
                <artifactId>commons-digesterartifactId>
                <version>2.1version>
            dependency>
            <dependency>
                <groupId>org.apache.commonsgroupId>
                <artifactId>commons-emailartifactId>
                <version>1.4version>
            dependency>
            <dependency>
                <groupId>commons-fileuploadgroupId>
                <artifactId>commons-fileuploadartifactId>
                <version>1.3version>
            dependency>
            <dependency>
                <groupId>commons-httpclientgroupId>
                <artifactId>commons-httpclientartifactId>
                <version>3.1version>
            dependency>
            <dependency>
                <groupId>commons-iogroupId>
                <artifactId>commons-ioartifactId>
                <version>2.2version>
            dependency>
            <dependency>
                <groupId>commons-langgroupId>
                <artifactId>commons-langartifactId>
                <version>2.6version>
            dependency>
            <dependency>
                <groupId>org.apache.commonsgroupId>
                <artifactId>commons-lang3artifactId>
                <version>3.3.1version>
            dependency>
            <dependency>
                <groupId>commons-logginggroupId>
                <artifactId>commons-loggingartifactId>
                <version>1.1.1version>
            dependency>
            <dependency>
                <groupId>commons-poolgroupId>
                <artifactId>commons-poolartifactId>
                <version>1.5.4version>
            dependency>
            <dependency>
                <groupId>org.apache.commonsgroupId>
                <artifactId>commons-pool2artifactId>
                <version>2.2version>
            dependency>
            <dependency>
                <groupId>dom4jgroupId>
                <artifactId>dom4jartifactId>
                <version>1.6.1version>
            dependency>

            <dependency>
                <groupId>org.ehcachegroupId>
                <artifactId>ehcacheartifactId>
                <version>3.0.0version>
            dependency>
            <dependency>
                <groupId>net.sf.ezmorphgroupId>
                <artifactId>ezmorphartifactId>
                <version>1.0.3version>
            dependency>
            <dependency>
                <groupId>org.freemarkergroupId>
                <artifactId>freemarkerartifactId>
                <version>2.3.20version>
            dependency>
            <dependency>
                <groupId>com.google.code.gsongroupId>
                <artifactId>gsonartifactId>
                <version>2.6.2version>
            dependency>

            
            <dependency>
                <groupId>org.hibernategroupId>
                <artifactId>hibernate-coreartifactId>
                <version>${hibernate.version}version>
            dependency>
            <dependency>
                <groupId>org.hibernategroupId>
                <artifactId>hibernate-entitymanagerartifactId>
                <version>${hibernate.version}version>
                <exclusions>
                    <exclusion>
                        <groupId>javassistgroupId>
                        <artifactId>javassistartifactId>
                    exclusion>
                exclusions>
            dependency>
            <dependency>
                <groupId>org.hibernategroupId>
                <artifactId>hibernate-ehcacheartifactId>
                <version>${hibernate.version}version>
            dependency>
            <dependency>
                <groupId>org.hibernategroupId>
                <artifactId>hibernate-commons-annotationsartifactId>
                <version>3.2.0.Finalversion>
            dependency>
            <dependency>
                <groupId>org.hibernate.javax.persistencegroupId>
                <artifactId>hibernate-jpa-2.0-apiartifactId>
                <version>1.0.1.Finalversion>
            dependency>
            <dependency>
                <groupId>org.hibernategroupId>
                <artifactId>hibernate-validatorartifactId>
                <version>${hibernate-validator.version}version>
            dependency>


            <dependency>
                <groupId>org.apache.httpcomponentsgroupId>
                <artifactId>httpclientartifactId>
                <version>4.3.5version>
            dependency>
            <dependency>
                <groupId>org.apache.httpcomponentsgroupId>
                <artifactId>httpcoreartifactId>
                <version>4.3.2version>
            dependency>
            <dependency>
                <groupId>org.mnode.ical4jgroupId>
                <artifactId>ical4jartifactId>
                <version>2.0-beta1version>
                <exclusions>
                    <exclusion>
                        <groupId>org.codehaus.groovygroupId>
                        <artifactId>groovy-allartifactId>
                    exclusion>
                    <exclusion>
                        <groupId>biz.aQute.bndgroupId>
                        <artifactId>bndlibartifactId>
                    exclusion>
                    <exclusion>
                        <groupId>org.osgigroupId>
                        <artifactId>org.osgi.coreartifactId>
                    exclusion>
                exclusions>
            dependency>
            <dependency>
                <groupId>org.im4javagroupId>
                <artifactId>im4javaartifactId>
                <version>1.4.0version>
            dependency>

            <dependency>
                <groupId>com.fasterxml.jackson.coregroupId>
                <artifactId>jackson-annotationsartifactId>
                <version>${jackson.version}version>
            dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.coregroupId>
                <artifactId>jackson-coreartifactId>
                <version>${jackson.version}version>
            dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.coregroupId>
                <artifactId>jackson-databindartifactId>
                <version>${jackson.version}version>
            dependency>

            <dependency>
                <groupId>javaxgroupId>
                <artifactId>javaee-apiartifactId>
                <version>7.0version>
            dependency>
            <dependency>
                <groupId>org.javassistgroupId>
                <artifactId>javassistartifactId>
                <version>3.18.1-GAversion>
            dependency>

            
            <dependency>
                <groupId>org.slf4jgroupId>
                <artifactId>jcl-over-slf4jartifactId>
                <version>1.7.5version>
            dependency>
            <dependency>
                <groupId>redis.clientsgroupId>
                <artifactId>jedisartifactId>
                <version>2.4.2version>
            dependency>

            <dependency>
                <groupId>net.sf.json-libgroupId>
                <artifactId>json-libartifactId>
                <version>2.1version>
            dependency>
            <dependency>
                <groupId>javax.servlet.jsp.jstlgroupId>
                <artifactId>jstl-apiartifactId>
                <version>1.2version>
            dependency>
            <dependency>
                <groupId>org.glassfish.webgroupId>
                <artifactId>jstl-implartifactId>
                <version>1.2version>
            dependency>
            <dependency>
                <groupId>javax.transactiongroupId>
                <artifactId>jtaartifactId>
                <version>1.1version>
            dependency>
            <dependency>
                <groupId>com.github.pengglegroupId>
                <artifactId>kaptchaartifactId>
                <version>2.3.2version>
            dependency>
            <dependency>
                <groupId>log4jgroupId>
                <artifactId>log4jartifactId>
                <version>1.2.17version>
            dependency>
            <dependency>
                <groupId>javax.mailgroupId>
                <artifactId>javax.mail-apiartifactId>
                <version>1.4.5version>
            dependency>
            <dependency>
                <groupId>mysqlgroupId>
                <artifactId>mysql-connector-javaartifactId>
                <version>5.1.16version>
            dependency>
            <dependency>
                <groupId>com.belerwebgroupId>
                <artifactId>pinyin4jartifactId>
                <version>2.5.0version>
            dependency>

            
            <dependency>
                <groupId>org.apache.poigroupId>
                <artifactId>poiartifactId>
                <version>3.10.1version>
            dependency>
            <dependency>
                <groupId>org.apache.poigroupId>
                <artifactId>poi-ooxmlartifactId>
                <version>3.10.1version>
            dependency>
            <dependency>
                <groupId>org.apache.poigroupId>
                <artifactId>poi-ooxml-schemasartifactId>
                <version>3.10.1version>
            dependency>
            <dependency>
                <groupId>javax.servletgroupId>
                <artifactId>javax.servlet-apiartifactId>
                <version>3.0.1version>
                <scope>providedscope>
            dependency>
            <dependency>
                <groupId>javax.servletgroupId>
                <artifactId>jstlartifactId>
                <version>1.2version>
            dependency>
            <dependency>
                <groupId>org.apache.shirogroupId>
                <artifactId>shiro-allartifactId>
                <version>1.2.1version>
                <exclusions>
                    <exclusion>
                        <groupId>org.apache.shirogroupId>
                        <artifactId>shiro-guiceartifactId>
                    exclusion>
                exclusions>
            dependency>
            <dependency>
                <groupId>org.slf4jgroupId>
                <artifactId>slf4j-apiartifactId>
                <version>1.7.5version>
            dependency>
            <dependency>
                <groupId>org.slf4jgroupId>
                <artifactId>slf4j-log4j12artifactId>
                <version>1.7.5version>
            dependency>

            <dependency>
                <groupId>org.springframeworkgroupId>
                <artifactId>spring-testartifactId>
                <scope>compilescope>
                <version>${spring.version}version>
            dependency>

            <dependency>
                <groupId>org.springframeworkgroupId>
                <artifactId>spring-coreartifactId>
                <version>${spring.version}version>
                <exclusions>
                    <exclusion>
                        <groupId>commons-logginggroupId>
                        <artifactId>commons-loggingartifactId>
                    exclusion>
                exclusions>
            dependency>
            <dependency>
                <groupId>org.springframeworkgroupId>
                <artifactId>spring-beansartifactId>
                <version>${spring.version}version>
            dependency>

            <dependency>
                <groupId>org.springframeworkgroupId>
                <artifactId>spring-contextartifactId>
                <version>${spring.version}version>
            dependency>
            <dependency>
                <groupId>org.springframeworkgroupId>
                <artifactId>spring-aopartifactId>
                <version>${spring.version}version>
            dependency>
            <dependency>
                <groupId>org.springframeworkgroupId>
                <artifactId>spring-aspectsartifactId>
                <version>${spring.version}version>
            dependency>
            <dependency>
                <groupId>org.springframeworkgroupId>
                <artifactId>spring-expressionartifactId>
                <version>${spring.version}version>
            dependency>
            <dependency>
                <groupId>org.springframeworkgroupId>
                <artifactId>spring-webartifactId>
                <version>${spring.version}version>
            dependency>
            <dependency>
                <groupId>org.springframeworkgroupId>
                <artifactId>spring-webmvcartifactId>
                <version>${spring.version}version>
            dependency>
            <dependency>
                <groupId>org.springframeworkgroupId>
                <artifactId>spring-websocketartifactId>
                <version>${spring.version}version>
            dependency>

            <dependency>
                <groupId>org.springframeworkgroupId>
                <artifactId>spring-txartifactId>
                <version>${spring.version}version>
            dependency>
            
            <dependency>
                <groupId>org.springframeworkgroupId>
                <artifactId>spring-context-supportartifactId>
                <version>${spring.version}version>
            dependency>
            <dependency>
                <groupId>org.springframeworkgroupId>
                <artifactId>spring-ormartifactId>
                <version>${spring.version}version>
                
            dependency>
            <dependency>
                <groupId>org.springframeworkgroupId>
                <artifactId>spring-jdbcartifactId>
                <version>${spring.version}version>
            dependency>
            <dependency>
                <groupId>org.springframeworkgroupId>
                <artifactId>spring-jmsartifactId>
                <version>${spring.version}version>
            dependency>
            <dependency>
                <groupId>org.springframework.datagroupId>
                <artifactId>spring-data-redisartifactId>
                <version>${spring-data-jpa.version}version>
            dependency>
            <dependency>
                <groupId>org.springframework.retrygroupId>
                <artifactId>spring-retryartifactId>
                <version>1.0.3.RELEASEversion>
            dependency>

            <dependency>
                <groupId>net.spygroupId>
                <artifactId>spymemcachedartifactId>
                <version>${spymemcached.version}version>
            dependency>
            <dependency>
                <groupId>staxgroupId>
                <artifactId>stax-apiartifactId>
                <version>1.0.1version>
            dependency>

            <dependency>
                <groupId>org.tuckeygroupId>
                <artifactId>urlrewritefilterartifactId>
                <version>3.2.0version>
            dependency>

            <dependency>
                <groupId>javax.validationgroupId>
                <artifactId>validation-apiartifactId>
                <version>1.0.0.GAversion>
            dependency>

            <dependency>
                <groupId>org.apache.xmlbeansgroupId>
                <artifactId>xmlbeansartifactId>
                <version>2.6.0version>
            dependency>


            <dependency>
                <groupId>com.google.zxinggroupId>
                <artifactId>coreartifactId>
                <version>${zxing.version}version>
            dependency>
            <dependency>
                <groupId>com.google.zxinggroupId>
                <artifactId>javaseartifactId>
                <version>${zxing.version}version>
            dependency>

            <dependency>
                <groupId>com.alibabagroupId>
                <artifactId>fastjsonartifactId>
                <version>${fastjson.version}version>
            dependency>

        dependencies>
    dependencyManagement>

common的pom.xml

<dependencies>
        
        <dependency>
            <groupId>com.mangofactorygroupId>
            <artifactId>swagger-springmvcartifactId>
            <version>0.9.5version>
        dependency>
    dependencies>

obs的pom.xml

<dependencies>
        <dependency>
            <groupId>com.smartprint.biztripgroupId>
            <artifactId>smartprint-commonartifactId>
        dependency>       
    dependencies>

mobile的pom.xml

<dependencies>
        <dependency>
            <groupId>com.smartprint.biztripgroupId>
            <artifactId>smartprint-commonartifactId>
        dependency>
        <dependency>
            <groupId>com.smartprint.biztripgroupId>
            <artifactId>obsartifactId>
            <classifier>apiclassifier>
            <version>${version}version>
        dependency>

        <dependency>
            <groupId>cn.jpush.apigroupId>
            <artifactId>jpush-clientartifactId>
            <version>3.2.11version>
        dependency>

        <dependency>
            <groupId>cn.jpush.apigroupId>
            <artifactId>jiguang-commonartifactId>
            <version>0.1.6version>
            <exclusions>
                <exclusion>
                    <groupId>org.slf4jgroupId>
                    <artifactId>slf4j-jdk14artifactId>
                exclusion>
                <exclusion>
                    <groupId>org.slf4jgroupId>
                    <artifactId>slf4j-nopartifactId>
                exclusion>

//解决方法,以下注释的4行代码
 //               <exclusion>
 //                   <groupId>com.mks.apigroupId>
 //                   <artifactId>mksapi-jarartifactId>
 //               exclusion>

            exclusions>
        dependency>


    dependencies>

测试情况:
调用obs接口,程序走到service层(common),
调用mobile,程序走到service层(common)

结果发现obs能够走下去,mobile走不下去。
到这里Maven依赖,不同jar包里相同的类名导致的大问题_第1张图片

mobile走到这个断点处总是报错:



十二月 31, 2016 7:16:16 下午 org.apache.catalina.core.StandardWrapperValve invoke

严重: Servlet.service() for servlet [Spring MVC Servlet] in context with path [/mobileapi] threw exception [Handler processing failed; nested exception is java.lang.NoSuchMethodError: org.apache.commons.httpclient.methods.PostMethod.getParams()Lorg/apache/commons/httpclient/params/HttpMethodParams;] with root cause

java.lang.NoSuchMethodError: org.apache.commons.httpclient.methods.PostMethod.getParams()Lorg/apache/commons/httpclient/params/HttpMethodParams;

    at com.linkage.zhenlv.utils.HttpUrlClient.httpPost(HttpUrlClient.java:80)

    ……

一刚开始看到这错误,在网上也搜不到。总是不断的去排除,是不是两边的接口进入到service层的时候出现数据不一致,反复多次。排除了一切能想到的原因。
最后,在我们架构师的帮助下,给了我几行代码,让我加在mobile的pom.xml里,给出的原因是:极光推送依赖的包有与项目已经依赖的jar包:不同的jar包,里有相同名字的类。

m2/repository/com/mks/api/mksapi-jar/4.10.9049

.m2/repository/commons-httpclient/commons-httpclient/3.1/commons-httpclient-3.1.jar

就是这两个Jar包。

总结了下,我真的很服咱们这个架构师。太牛了。

你可能感兴趣的:(maven,jar,架构)