5分钟快速上手maven
一个语言的生态包含了库和框架。这两个东西存在的意义都是为了给程序猿提供已经造好的轮子,以方便程序猿的开发。
库是“被动“的,库被提供之后,程序猿需要自己写一些逻辑来调用库。
框架是“主动”的,使用框架的时候,核心流程已经提供好了,程序猿只需要写一些自动的简单逻辑即可。
库和框架到哪里找?
- 标准库是jdk自带的,直接就可以使用。
- 第三方库有多中途径:
- 库/框架的官方网站
- github(不一定都开源,需要自己去找开源的库/框架)
- 中央仓库。
其中中央仓库是一些大佬将第三方库进行归档,我们只需要在中央仓库中搜索,然后就可以统一进行下载/安装。
中央仓库maven的作用
- 组织好项目的目录结构
- 构建打包程序(自动编译,打jar包)
- 管理项目依赖
使用idea创建一个maven项目,简单介绍项目的结构
通过GroupId + ArtifactId + Version
可以共同确定一个jar包
- 项目目录结构介绍
pom.xml是一个maven项目最核心的配置文件。
xml文件就是一种多标签文件。每一个标签都有开始标签和结束标签。每一个标签可以看成一个键值对,key就是标签名,value是标签中的内容。
.xml文件中有哪些标签,标签的语义的定义,标签之间如何嵌套都是可以自定义的。(对于一种特殊的xml文件html文件,其中标签的定义和嵌套规则都是约定好的)
功能一:项目管理依赖
- 首先去maven中央仓库中找到自己想要下载的库Maven Repository: Search/Browse/Explore (mvnrepository.com)
这里假设下载mysql connector
-
搜索
mysql connector
-
随便选一个版本
-
如果下载的库没有其他依赖的话,可以直接在
Files
中点击jar
下载文件。但是如果想要通过maven下来一系列有依赖的文件的话,就可以将下面这段代码复制到maven项目的pom.xml的dependencies
标签中。
-
名字飘红说明文件没有下载完成,需要等待一段时间。maven会将下载的jar包自动放到一个“本地仓库”的目录中
-
注意:下载的过程是比较慢的,特别是第一次使用maven下载的时候,maven会自动下载很多maven本身的依赖。
-
如果等待了几个小时还没有下载好,可以有两种选择:
-
重新加载一遍
-
更换maven源。在下图位置
新建一个settings.xml
文件。然后将下面代码放在该文件中,最后reoload maven即可。
-
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
<localRepository/>
<interactiveMode/>
<usePluginRegistry/>
<offline/>
<pluginGroups/>
<servers/>
<mirrors>
<mirror>
<id>aliyunmaven</id>
<mirrorOf>central</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/central</url>
</mirror>
<mirror>
<id>repo1</id>
<mirrorOf>central</mirrorOf>
<name>central repo</name>
<url>http://repo1.maven.org/maven2/</url>
</mirror>
<mirror>
<id>aliyunmaven</id>
<mirrorOf>apache snapshots</mirrorOf>
<name>阿里云阿帕奇仓库</name>
<url>https://maven.aliyun.com/repository/apache-snapshots</url>
</mirror>
</mirrors>
<proxies/>
<activeProfiles/>
<profiles>
<profile>
<repositories>
<repository>
<id>aliyunmaven</id>
<name>aliyunmaven</name>
<url>https://maven.aliyun.com/repository/public</url>
<layout>default</layout>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>MavenCentral</id>
<url>http://repo1.maven.org/maven2/</url>
</repository>
<repository>
<id>aliyunmavenApache</id>
<url>https://maven.aliyun.com/repository/apache-snapshots</url>
</repository>
</repositories>
</profile>
</profiles>
</settings>
功能二:打包构建
-
打包操作只有一步,只需要运行
package
即可
-
打包好jar文件之后,就会自动生成一个target文件夹,jar包就会存在这个文件夹中。之后就可以将这个jar包发布给别人了。