Maven Jar依赖有6个范围,分别是:compile、provided、runtime、system、test、import;通过scope标签指定Jar依赖范围;
complie:不指定依赖范围,默认是complie范围,编译和运行都有效;
provided:编译、测试有效,运行时无效;
runtime:运行时有效,编译时无效,常用的JDBC驱动jar设置此范围;
system:使用本地jar包,需要通过systemPath标签指定jar的本地地址;例如:
test:编译测试、运行测试时有效,真正运行不需要,常用的JUnit 包指定此范围;
import:在父工程中指定jar的范围是import时,子工程中的jar包版本必须与父工程一致,不允许子工程,单独指定jar包的版本号;只适应<dependencyManagement>部分,例如:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.4</version>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
排除jar包用:
<exclusions>
<exclusion>
<groupId></groupId>
<artifactId></artifactId>
</exclusion>
</exclusions>
Maven的3种工程:
pom工程:父工程,逻辑工程,管理Jar版本信息,例如:
指定父工程:
聚合关系:项目+模块
创建maven项目,pom文件配置如下:
在maven项目中添加module,pom配置信息如下: