2016年8月10日 14:06分,我在慕课网上学习了《项目管理利器-maven》的部分课程。
Maven工具安装方法:
1.进入maven官网下载maven-3.3.9.bin.zip文件(有最新版可下载最新版本,我用的是3.3.9)
2.将maven解压到任意目录
3.在环境变量中新建M2_HOME的变量,变量值就是maven文件的根目录(比如我的是D:\开发工具\apache-maven-3.3.9)
4.在path变量中将%M2_HOME%\bin添加到path变量值的末尾,记得添加前在末尾加上分号
5.打开命令行,输入mvn -v,如果输出了maven的版本信息,那么恭喜你,你的maven已经安装成功啦!
今天学习到了maven 的一些基本命令如下:
1.Maven项目的目录结构
src
-main
-java
-package
-test
-java
-package
resources
2.maven的一些基本命令
mvn -v 查看maven的版本信息
mvn complie 编译所在项目根目录的maven项目,并生成target目标文件
mvn test 测试maven项目
package 将maven项目打包成jar文件
clean 删除target目录
install 安装jar包到本地仓库
创建目录的两种方式:
1.mvn archetype:generate 按照提示进行操作
2.archetype:gennerate -DgroupId=组织名,公司网址的反写+项目名
-DartifactId=项目名-模块名
-Dversion=版本号
-Dpackage=代码所存在的包
maven中的坐标和仓库:
pom.xml文件中添加依赖jar包的方法
<dependency>
<groupId>com.imooc.maven01</groupId>
<artifactId>maven01-model</artifactId>
<version>0.0.1SNAPSHOT</version>
</dependency>
maven的仓库用于管理存放依赖的jar包
有中央仓库和镜像仓库
中央仓库的网站在国外,有时会无法访问
这时可以借助镜像仓库,镜像仓库是国内的,内容和中央仓库基本相同,但是下载速度却很快
在maven的lib目录中的maven-model-builder.jar文件中的pom.xml中可以查看到中央仓库的坐标
-<repository>
<id>central</id>
<name>Central Repository</name>
<url>https://repo.maven.apache.org/maven2</url>
<layout>default</layout>
-<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
我们可以在setting.xml文件中配置镜像仓库,配置方法如下:
<mirror>
<id>maven.net.cn</id>
<mirrorOf>central</mirrorOf> 或者*匹配所有的远程仓库
<name>central mirror in china</name>
<url>http://maven.net.cn/content/groups/public</url>
</mirror>
还有另一个镜像仓库供参考:
<mirror>
<id>UK</id>
<name>UK Central</name>
<url>http://uk.maven.org/maven2</url>
<mirrorOf>central</mirrorOf>
</mirror>
一般本地仓库是默认存放在Default: ${user.home}/.m2/repository(如果你要重装系统的话,那么这些文件就会消失!)
在setting.xml文件中,我们可以修改本地仓库的存放位置,方法如下:
<localRepository>/path/to/local/repo</localRepository>
2016年8月12日11:41分,我在慕课网的Maven学习视频中学习到了如何在maven项目中添加插件的方法,用法如下:
在pom.xml文件中添加如下语句:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.4</version>
<executions>
<!--在打包成功后执行以下目标-->
<execution>
<phase>package</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
解析pom.xml文件:
<!--指定了当前pom版本-->
<modelVersion>4.0.0</modelVersion>
<groupId>反写的公司网址+项目名</groupId>
<artifactId>项目名+模块名</artfactId>
<!--第一个0表示大版本号
第二个0表示分支版本号
第三个0表示小版本号
0.0.1
snapshot快照
alpha 内部测试
beta 公测
Release 稳定版
GA正式发布 -->
<version></version>
<!--默认是jar
也有war zip pom-->
<packaging></packaging>
<!--项目描述名-->
<name></name>
<!--项目地址-->
<url></url>
<!--项目描述-->
<description></description>
<developers></developersw>
<licenses></licenses>
<organization></organization>
<dependencies>
<denpendency>
<groupId></groupId>
<artifactId></artifactId>
<version></version>
</dempendency>
</dependencies>