更新时间:2022-03-19 08:54:41
<dependency>
<groundId>org.apache.struts</groundId>
<artifactId>struts2-core</artifactId>
<version>2.3.24</version>
</dependency>
一个项目生命周期(Project Lifecycle)
一个软件开发人员每天都在完成项目的生命周期:清理、编译、测试、部署,有的手工完成,有的通过Ant(也是一个项目构建工具)脚本自动完成,maven将项目的生命周期抽象统一为:清理、初始化、编译、测试、报告、打包、部署、站点生成等。
maven就是要保证一致的项目构建流程,通过执行一些简单命令即可实现上边生命周期的各个过程。
maven工作需要配置仓库,本地的项目A、项目B等通过maven从远程仓库(可以理解为互联网上的仓库)下载jar包并保存在本地仓库,本地仓库就是本地文件夹,当第二次需要此jar包时则不再从远程仓库下载,因为本地仓库已经存在了。可以将本地仓库理解为缓存,有了本地仓库就不用每次从远程仓库下载了。
下面描述了maven中仓库的类型:
http://repo1.maven.org/maven2
,它是中间仓库(即特殊的远程仓库),服务于整个互联网,它是由maven团队自己维护的,里面由大量的常用类库,并包含了世界上大部分流行的开源项目构件。I. 新建环境变量
%MAVEN_HOME%\bin
添加到path环境变量中mvn -v
本地仓库是用来存放联网下载的maven插件和jar包,maven本地仓库有的jar包将不再从互联网下载,所以本地仓库就相当于一个缓存。
在maven的安装目录中的conf目录下有一个settings.xml文件,在这个文件中可配置本地仓库
如果本地仓库不配置(那么就会从互联网上下载jar包,而且下载速度贼慢),那么默认的本地仓库的位置就是{user.home}表示windows用户目录,在win7系统下如下:
高版本的eclipse默认已经集成了maven的插件,但其实还内置了maven程序,Window->Preferences,搜索maven如下:
点击Add...->>然后选择自己电脑中的maven程序->>点击Finish。
然后勾选新增的一项。
点击User Settings->点击Browse...选择settings.xml文件->点击Update Settings,在Local Repository一项会自动填充仓库位置->点击Apply->OK。
Window->Show View->Other->Maven->Maven Repositories.
I. File->Other->Maven->Maven Project->Next
II. 勾选Use default Workspace location是将工程创建在默认的路径下
maven-archetype-webapp: Web工程
IV. 配置信息->点击Finish.
project
/src/main/java 主体程序的java源文件(不要放配置文件)
/src/main/resources 主体程序所需要的配置文件(不要放java文件)
/src/test/java 单元测试程序的java源文件
/src/test/resources 单元测试程序所用的配置文件
/target 编译输出目录
/pom.xml
I. 设置maven的编译版本,由于我使用的是JDK1.8,所以要设置maven的编译版本为1.8,即要在maven工程的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.mazaiting.cmp</groupId>
<artifactId>MavenTest</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>MavenTest Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<finalName>MavenTest</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
</project>
maven运行的时候都是依赖于插件的,包括编译也是需要通过插件——org.apache.maven.plugins(该插件就在你的本地仓库)来完成。
II. 添加完如上配置之后,可发现我们的maven工程上面有一个红叉,如下所示:
III. 更新项目。右键项目->Maven->Update Project...