(二)maven依赖,两个项目之间如何依赖,继承实现

maven的jar之间存在依赖关系的,我们在引入一个时,其他有依赖关系的也会被引入

依赖排除:

比如现在有两个依赖关系,A(x,java,y.java,z.java)  B(a,java,b,java,c.java),但是他们之前的依赖实质是 z.java--c.java,那么就不需要a和b,进行如下配置进行排除:

  <exclusions>
                <exclusion>
                    <artifactId></artifactId>
                    <groupId></groupId>
                </exclusion>
            </exclusions>

如图,在依赖包的<dependcy>标签之中,通过gav定位需要排除的beans即可

依赖的传递性:

A.jar--B.jar--C.jar:

三者依赖关系如上,如果想要让A也依赖于C,那么B.jar---C.jar的依赖范围必须是compile

两个项目之间的依赖,

现在有两个项目,HelloWorld和HelloWorld2,这是他们的目录结构

 

 

helloworld的坐标

   <modelVersion>4.0.0</modelVersion>

    <groupId>org.apache.maven</groupId>
    <artifactId>HelloWorld</artifactId>
    <version>1.0-SNAPSHOT</version>

 

如果想在hellowold2之中使用 Helloworld之中类,需要以下几个步骤:

1.helloworld项目之中,执行mvn install  ,将当前项目打包成jar包,并放进本地仓库当中

2.helloworld2项目之中的的pom.xml之中,加入依赖:helloworld的坐标

  <dependency>
            <groupId>org.apache.maven</groupId>
            <artifactId>HelloWorld</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>

,之后更新项目,就可以成功的引入我们自定义的项目jar包啦。如图,可以引入helloworld项目的HelloWorld方法

 maven继承实现:

现在有两个项目  A-B,

继承就是说B项目之中依赖了的包,A项目也可以使用。一般用于统一管理版本号等

具体实现如下:

1.创建父工程parent,打包方式为pom,并在其中依赖junit.jar,注意要写在<dependencyManagement>标签之中。如下

 

接下来在子工程Helloworld的pom.xml当中添加父工程标签,这里的<relativePath>是父工程的pom.xml文件的位置,其他是父工程的gav

    <parent>
        <groupId>org.apache.maven</groupId>
        <artifactId>parent</artifactId>
        <version>1.0-SNAPSHOT</version>
        <relativePath>../parent/pom.xml</relativePath>
    </parent>

  接下来在子类当中,声明一下需要使用父类当中的哪些jar包:声明写在pom.xml的<dependenices>标签之中,如下:

可以看到有一个向上继承的符号,说明继承已经成功了。更新之后发现junit已经导入,

 

posted @ 2019-08-12 15:21  _Ennio  阅读(12820)  评论(0编辑  收藏  举报