Maven的配置
Maven的运行流程
Maven的生命周期
Maven的生命周期就是对所有的构建过程进行抽象和统一。包含了项目的清理、初始化、编译、测试、打包、集成测试、验证、部署和站点生成等几乎所有的构建步骤。
1、clean生命周期:清理项目,包含三个phase。
1)pre-clean:执行清理前需要完成的工作
2)clean:清理上一次构建生成的文件
3)post-clean:执行清理后需要完成的工作
他只会清理项目文件夹下的target和src/test文件夹内容。不会删除install命令生成至本地仓库的文件。
2、default生命周期:构建项目,重要的phase如下。
1)validate:验证工程是否正确,所有需要的资源是否可用。
2)compile:编译项目的源代码。
会生成.class文件放在target文件夹下,该命令包含了validate(验证)。
3)test:使用合适的单元测试框架来测试已编译的源代码。这些测试不需要已打包和布署。
包含了对 resource和java文件的validate(验证)和tset(测试)。并生成test文件夹。
4)Package:把已编译的代码打包成可发布的格式,比如jar。
在test的命令下添加了打包(编译过的文件,)jar包多了一个META-INF描述文件。
5)integration-test:如有需要,将包处理和发布到一个能够进行集成测试的环境。
6)verify:运行所有检查,验证包是否有效且达到质量标准。
7)install:把包安装到maven本地仓库,可以被其他工程作为依赖来使用。
安装到了本地仓库,就可以添加引用了。
<dependency>
<groupId>com.baidu</groupId>
<artifactId>baidu_dao</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
8)Deploy:在集成或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其他的开发者或者工程可以共享。
3、site生命周期:建立和发布项目站点,phase如下
1)pre-site:生成项目站点之前需要完成的工作
2)site:生成项目站点文档
3)post-site:生成项目站点之后需要完成的工作
4)site-deploy:将项目站点发布到服务器
Maven的标签
scop常用有compile和provide
可选依赖
- <optional> true/false<optional> 是否可选,也可以理解为是否向下传递。
plugins为插件需要添加 groupId、artifactId、version。项目中配置了Tomcat7.0端口号与路径
<modelVersion>4.0.0</modelVersion>
<!-- groupId公司域名、 artifactId项目名、 version版本号-->
<groupId>com.baidu</groupId>
<artifactId>baidu_parent</artifactId>
<version>1.0-SNAPSHOT</version>
<!-- 包含哪些子模块-->
<modules>
<module>baidu_pojo</module>
<module>baidu_dao</module>
<module>baidu_service</module>
<module>baidu_web</module>
</modules>
<!-- 集中定义依赖版本号 -->
<properties>
<!-- 自定义标签、便于集中管理依赖包的版本控制-->
<junit.version>4.12</junit.version>
<!-- dependencyManagement夫工程独有的标签-->
<dependencyManagement>
<dependencies>
<!-- Spring -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<!-- 与上文properties ->spring.version-->
<version>${spring.version}</version>
<!-- 选择作用范围-->
<scope>compile</scope>
<!-- 在 dependencies-> dependency 下可以配置 optional可选择是否向下传递的默认false-->
<optional>false</optional>
<!-- 在 dependencies-> dependency 下可以配置exclusions 依赖的时候,排除哪些依赖-->
<exclusions>
<exclusion>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
</exclusion>
</exclusions>
<build>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<!-- 指定端口 -->
<port>9000</port>
<!-- 请求路径 -->
<path>/</path>
</configuration>
</plugin>
</plugins>
配置Tomcat配件
需要添加运行项目、添加命令tomcat7:run(它会推荐命令的)