美文网首页MAVEM
<JavaWeb>Maven多文件系统管理

<JavaWeb>Maven多文件系统管理

作者: 普通一般社会人 | 来源:发表于2016-04-19 07:08 被阅读64次

    我们在开发中难免会遇到多个文件相互依赖的情况,使用Maven来进行项目的依赖管理,我们需要进行以下几步操作:

    依赖声明

    比如,我们有项目Restaurant,其中有一个方法依赖于另一个项目Kitchen中的一个方法,那么,我们需要

    import com.netease.Kitchen;
    

    注意,这里的地址写的是Kitchen包地址+文件名的形式。在物理目录下它们并不在一个目录里。

    Maven配置

    这样,我们的代码在Eclipse里就不会报错了,但是想要让服务器能够正确的区分依赖关系,需要对pom.xml进行配置。
    首先,我们需要一个父层pom.xml文件:

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <groupId>com.netease.restaurant</groupId>//和管理的项目相同
      <artifactId>restaurant-parent</artifactId>//加上parent
      <version>1.0.0-SNAPSHOT</version>
      <packaging>pom</packaging>//类型为pom
      <name> Multi modules demo </name>//名字任意
    //声明管理的模块
      <modules>
          <module>Restaurant</module>
          <module>Kitchen</module>
      </modules>
    
    </project>
    

    然后,我们需要分别配置被管理的两个子模块
    Kitchen:

    //这个标签在<project>标签下
      <parent>
          <groupId>com.netease.restaurant</groupId>
          <artifactId>restaurant-parent</artifactId>
          <version>1.0.0-SNAPSHOT</version>
          <relativePath>../pom.xml</relativePath>
      </parent>
    

    Restaurant:

    //声明管理者
        <parent>
            <groupId>com.netease.restaurant</groupId>
            <artifactId>restaurant-parent</artifactId>
            <version>1.0.0-SNAPSHOT</version>
            <relativePath>../pom.xml</relativePath>
        </parent>
    
    //声明依赖的对象
            <dependency>
                <groupId>com.netease.restaurant</groupId>
                <artifactId>Kitchen</artifactId>
                <version>1.0.0-SNAPSHOT</version>
            </dependency>
    

    然后,使用

    mvn install
    

    命令来判断是否声明正确,如果正确的话,便可以进入Restaurant来运行了。

    相关文章

      网友评论

        本文标题:<JavaWeb>Maven多文件系统管理

        本文链接:https://www.haomeiwen.com/subject/sjwalttx.html