PS: 本文是东拼西凑抄的笔记,可以直接去看参考的文章。
弱弱地推一下自己的hub博
Maven - notes 1
【背景】假设我们开发一个项目,或者做一个小demo,如果用···,那么我们就必须将···所依赖的jar包依次找出来,并手动导入。这个过程会想象一下就比较繁琐。
Maven是基于项目对象模型(POM, project object model),可以通过一小段描述信息(配置)来管理项目的构建,报告和文档的软件项目管理工具。
主要作用:
-
选择获取(特定版本的)jar包。
-
寻找依赖,下载依赖。
-
热部署,热编译。(减免重启服务器/重新部署)
目录结构
常见的简单结构
┬ /.settings
├ /src
│ ├ /main
│ └ /test
├ /target
│ └ /class
├ .classpath
├ .project
└ pom.xml
路径/文件 | 主要用途 |
---|---|
/src |
主要存放源代码文件,其中一般有两个文件目录; |
/src/main |
放用于运行项目的代码,再下一级的目录就是各种package。 |
/src/test |
放用于测试项目的代码,同时都拥有resource资源文件。 |
/target |
放编译后的代码。 |
pom.xml |
资源文件,确定该项目需要使用哪些jar包的坐标,并通过该坐标在中央仓库进行自动下载。 |
Tips: 所以 pom.xml 大概是怎么做的?
<dependencies> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.2.5</version> </dependency> </dependencies>
通过三个元素标识一个Maven项目,IDE就能去远程仓库下载了。
安装与配置
Win10
前提:建议先装好JDK。
IDEA
???
目录结构
┬ /bin
├ /boot
├ /conf
│ ├ /logging
│ ├ settings.xml
│ └ toolchains.xml
├ /lib
├ LICENCE
├ NOTICE
└ README.txt
路径/文件 | 主要用途 |
---|---|
/bin |
放Maven的启动文件,包括两种:一种是直接启动,另一种是通过debug模式下启动。 |
/boot |
放类加载器框架。 |
/conf |
放全局配置文件setting.xml ,即为所有仓库都实施的配置。仓库也有私有配置的setting,一般推荐使用私有配置,因为全局配置在Maven的安装目录里。 |
/lib |
放Maven运行需要的各种jar包。 |
LICENCE |
Maven的软件使用许可证书 |
NOTICE |
Maven包含的第三方软件 |
README.txt |
Maven的简单介绍以及安装说明 |
解决下载——镜像
因为众所周知的原因,在国内用Maven一般情况是很难下载到东西的。
现在一般都是在setting.xml
的<mirrors>
标签里加阿里云的镜像就可以了。
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
解决下载——代理
一般是个人希望用工具去下官方仓库的东西,或者有特殊的任务需求才会用把。
能代理的前提是,你有一个可以ping得通repol.maven.org
的代理服务器访问权哦。
<proxy>
<id>optional</id> //代理Id
<active>true</active> //是否要激活
<protocol>http</protocol> //采用协议
<username>proxyuser</username> //如果代理需要认证就需要账号密码
<password>proxypass</password>
<host>proxy.host.net</host> // ip
<port>80</port> //端口
<nonProxyHosts>local.net|some.host.com</nonProxyHosts>
//不需要代理的主机ip用户|隔开,例如里面的some.host.com,即所有对这个网站的访问都不需要代理
</proxy>