Maven 是基于项目对象模型(Project Object Model),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。
Maven 主要有 2 个功能:「项目构建」和「依赖管理」。
说明
由于无论是 Eclipse 还是 IDEA 都内置了 maven ,所以并没有什么必要去「单独下载 maven ,并在命令行中使用」。通常我们都是在开发工具中基于图形化界面进行操作。当然,图形化操作的背后本质上还是执行了对应了 maven 命令。所以,你还是有必要去了解一下 maven 命令行操作。我会在本系列最后章节输出相关的命令和使用。
说明
以下内容对未来的操作会有重要影响,因此在学习、使用 maven 之前,我们先执行一下这些配置操作。
在使用 Maven 的过程中,Maven 会通过互联网从一个名为"中央仓库"的地方下载所需的各种包,但是由于这个下载地址是在国外,因此下载速度很慢且不稳定。阿里(还有其他的公司和机构)对这个中央仓库提供了"镜像服务",并保持持续的更新。
在正式使用 maven 之前,我们提前配置好阿里的 maven 仓库,以避免白白浪费时间。
这里有几个注意事项:
这个目录是 Windows 操作系统的用户家目录,可以通过 %homepath% 快速进入到这个目录;
如果这个文件夹存在,那么就直接利用它,不需要再创建了;
由于 windows 图形化界面中认为 .m2 这个文件名"有问题",所以这里直接使用命令行命令创建它:md .m2 。
将下面的 settings.xml 配置文件复制到 .m2 中目录中,即可。
<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">
<mirrors>
<mirror>
<id>aliyunmavenid>
<mirrorOf>*mirrorOf>
<name>阿里云公共仓库name>
<url>https://maven.aliyun.com/repository/publicurl>
mirror>
mirrors>
<profiles>
<profile>
<id>jdk-1.8id>
<activation>
<activeByDefault>trueactiveByDefault>
<jdk>1.8jdk>
activation>
<properties>
<maven.compiler.source>1.8maven.compiler.source>
<maven.compiler.target>1.8maven.compiler.target>
<maven.compiler.compilerVersion>1.8maven.compiler.compilerVersion>
properties>
profile>
profiles>
settings>
这里有几个注意事项:
在这个配置文件中,我们主要配置了"中央仓库"的网址。从默认的、外网仓库网址改成了阿里提供的国内镜像服务器网址(从而提高未来使用中下载包的速度)。
如果 .m2 中原本就有 settings.xml 配置文件,而那么稳妥起见,你就需要将我们的模板文件中的内容"抠"出来,复制进去(而不是贸然的直接复制覆盖源文件,以免出现原配置丢失的情况)。
这个脚本文件是为了解决 .lastUpdated 文件问题。
将下面的 cleanLastUpdated.bat 脚本文件复制到 .m2 中目录中,即可。
以下内容是 Windows 下的“清除脚本”的内容。
REPOSITORY_PATH
变量的值根据具体情况的不同可以有调整。
@echo off
set REPOSITORY_PATH=C:%HOMEPATH%\.m2\repository
rem 正在搜索...
for /f "delims=" %%i in ('dir /b /s "%REPOSITORY_PATH%\*lastUpdated*"') do (
echo %%i
del /s /q "%%i"
)
rem 搜索完毕
pause
这里有几个注意事项:
这个脚本文件是用来清除 %homepath%/.m2/repository 中的 .lastUpdated 文件的。使用时双击它即可。
如果你改动过配置,使得你的本地仓库并不在默认的 %homepath%/.m2/repository 中,而你还想利用这个脚本文件,那么你就需要打开它、编辑它,改成符合你的需要的情况。
在未来,settings.xml 的"旁边"会有一个名为 “repository” 的文件夹,你从或阿里的镜像服务器(即,中央仓库)下载的各种包,就会被放在这里面。这个 “repository” 文件夹,也被称为 maven 的 “本地仓库” 。