maven是一个java的项目构建工具 是apache下面的
下载地址为http://maven.apache.org/download.cgi 下载完解压到硬盘某一目录
配置环境变量 MAVEN_HOME:E:\tool\apache-maven-3.5.2
PATH: ;%MAVEN_HOME%\bin
配置好环境变量后在cmd中输入mvn -v 即可看见maven版本信息
接下来学习一些maven命令
mvn -B archetype:generate -DgroupId=com.jtthink -DartifactId=htmlparser
这条命令意思为创建一个maven项目
archetype:generate意思为按照mvn的默认文件生成一些目录结构以及pom.xml文件
groupID:项目唯一标识符,对应初始项目包,在main下方的java里面
artifactld:项目唯一标识符。好比项目名称
执行完命令后项目中出现如下目录及文件
src目录下为maven默认目录
pom.xml为配置文件打开配置文件
里面有下面一段内容
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
意思为依赖 是一个复数 代表可以有多个dependency(依赖)
在配置文件添加一个jsoup依赖
jsoup地址https://jsoup.org/
配置文件为
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.11.2</version>
</dependency>
保存
直接保存没有任何作用 必须使用命令使其生效
mvn是一个由若干插件和工具组件组成的一个框架
mvn插件地址http://maven.apache.org/plugins/index.html
这里包含 mvn的所有插件 包括编译 其中dependecy的作用就是
查看项目目录下是否下载过该依赖如果有则不下载,没有才下载
命令如下 进入到htmlparser项目目录下执行
mvn dependecy:copy-dependencies
执行这个命令 会在终端中看见远程仓库的下载地址 以及下载的jar包拷贝到了target/dependency目录下 target为新生成的目录 作为编译运行项目的输出文件夹
jar包运行的classpath会依赖target文件夹,这个为拷贝的目录 如下图
但是项目从远程仓库下载到哪里了?
下载到本地仓库默认目录为C:\Users\HC.m2\repository如下图
如果将本地仓库中依赖删除即删除jsoup文件夹 执行命令则会继续下载
如果都下载完成在执行命令则不会下载
如何修改默认本地仓库地址?
修改maven默认的配置文件
setting.xml即为配置文件
打开找到这段内容
这段本来是注释掉的打开加入即可<localRepository>F:\javapro\mvnpro\mvnrepo</localRepository>保存
重新执行mvn dependecy:copy-dependencies 会将mvn依赖放入设置的仓库目录内
maven中央仓库地址
默认中央仓库地址为http://repo1.maven.org/maven2/
一般在此地址找相关软件http://search.maven.org/ 例如jsoup打开地址搜索即可如下图
可根据这个来拼写pom文件中的dependency内容
比较方便的是这个地址http://mvnrepository.com
输入jsoup即可看见个版本的jsuop的依赖配置文件代码
项目的编译运行
mvn compile 命令
执行此命令也会下载一些依赖 执行完成后会在target目录下生成一些class文件
运行项目
实际做项目肯定要借助只能编辑器idea
现在用命令方式运行
exec:java 执行java mainClass入口文件
mvn exec:java -Dexec.mainClass="com.jtthink.App"
运行完成后终端中出现测试程序hello world结果