例如:
可以直接手动命令行创建
spring 定义的artifactId:一般就是模块名称
定义ArtfactId 默认pom name 和 项目模块名就是这个
默认打包名称 ${artifactId}-${version}.${packaging}
<artifactId>xxx</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
打出的包,名称为:xxx-0.0.1-SNAPSHOT.war
maven 范围依赖:
compile :编译、测试、运行
privided:编译、测试
runtime:测试、运行
test:仅测试
例如 user-dao 依赖 user-core (已依赖junit 范围test) ,这个user-dao 同样需要依赖junit。
因为core的junit是test范围。编译、测试、运行 是三个不同的classpath。
maven-传递性依赖
路径最近====》
路径相同 ====》 第一申明优先
maven项目聚合和继承
聚合的好处:比如maven install 就会对所有模块进行install,而不用一个一个模块去执行。
继承
定义一个parent
继承parent,groupId 可以不用写,artifactId必须写