dependencies和dependencyManagement中的dependencies区别

1.在Maven中dependencyManagement的作用对所依赖jar包进行版本管理的管理器,dependencyManagement中申明dependencies并不引入进应的Jar包,只是声明依赖。
2.独立的dependencies的依赖会引入相应的Jar包
3.Maven依赖工作过程:如果dependencies里的dependency自己没有声明version元素,那么maven就会倒dependencyManagement里面去找有没有对该artifactId和groupId进行过版本声明,如果有,就继承它,如果没有就会报错,告诉你必须为dependency声明一个version.如果dependencies中的dependency声明了version,那么无论dependencyManagement中有无对该jar的version声明,都以dependency里的version为准。

实例应用:在父pom文件中加了dependencyManagement节点,添加了一些依赖的version信息,都没问题。但是添加
   
    net.sf.ehcache
    ehcache-core
    2.3.0
   
maven编译就会出错。报错信息如下:
'dependencies.dependency.version' for net.sf.ehcache:ehcache-core:jar is missing. @ line 126, column 21

在子pom文件中,该依赖如下:
      
            net.sf.ehcache
            ehcache-core
      
      
解决方法:在父POM中将dependency添加到dependencyMangagemetn标签中

    
            
                    net.sf.ehcache
                    ehcache-core
                    2.3.0
        
    

总结:

创新互联是一家集网站建设,林周企业网站建设,林周品牌网站建设,网站定制,林周网站建设报价,网络营销,网络优化,林周网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

//只是对版本进行管理,不会实际引入jar  

  

        

              

                org.springframework  

                spring-core  

                3.2.7  

              

      

  

  

//会实际下载jar包  

  

         

                org.springframework  

                spring-core  

         


分享文章:dependencies和dependencyManagement中的dependencies区别
文章URL:http://myzitong.com/article/jieoce.html