我们在开发中难免会遇到多个文件相互依赖的情况,使用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来运行了。