目录
一、Maven 仓库的分类
maven 的工作需要从仓库下载一些 jar 包,如下图所示,本地的项目 A、项目 B 等都会通过 maven软件从远程仓库(可以理解为互联网上的仓库)下载 jar 包并存在本地仓库,本地仓库就是本地文件夹,当第二次需要此 jar 包时则不再从远程仓库下载,因为本地仓库已经存在了,可以将本地仓库理解为缓存,有了本地仓库就不用每次从远程仓库下载了。
下图描述了 maven 中仓库的类型:
本地仓库 :用来存储从远程仓库或中央仓库下载的插件和 jar 包,项目使用一些插件或 jar 包,
优先从本地仓库查找
默认本地仓库位置在 ${user.dir}/.m2/repository,${user.dir}表示windows 用户目录。当然你也可以自己指定目录,最好不用出现中文和空格。
远程仓库:如果本地需要插件或者 jar 包,本地仓库没有,默认去远程仓库下载。远程仓库可以在互联网内也可以在局域网内。
中央仓库 :在 maven 软件中内置一个远程仓库地址 http://repo1.maven.org/maven2 ,它是中
央仓库,服务于整个互联网,它是由 Maven 团队自己维护,里面存储了非常全的 jar 包,它包
含了世界上大部分流行的开源项目构件。
二、 Maven 本地仓库的配置
在 MAVE_HOME/conf/settings.xml 文件中配置本地仓库位置(maven 的安装目录下):
打开 settings.xml文件,配置如下:
三、全局 setting 与 与户 用户 setting
maven 仓库地址、私服等配置信息需要在 setting.xml 文件中配置,分为全局配置和用户配置。
在 maven 安装目录下的有 conf/setting.xml 文件,此 setting.xml 文件用于 maven 的所有 project项目,它作为 maven 的全局配置。
如需要个性配置则需要在用户配置中设置,用户配置的 setting.xml 文件默认的位置在:${user.dir}/.m2/settings.xml 目录中,${user.dir} 指windows 中的用户目录。
maven会先找用户配置,如果找到则以用户配置文件为准,否则使用全局配置文件。
四、Maven 工程的目录结构
作为一个 maven 工程,它的 src目录和 pom.xml 是必备的。进入 src目录后,我们发现它里面的目录结构如下:
src/main/java —— 存放项目的.java 文件
src/main/resources —— 存放项目资源文件,如 spring, hibernate 配置文件
src/test/java —— 存放所有单元测试.java 文件,如 JUnit 测试类
src/test/resources —— 测试资源文件
target —— 项目输出位置,编译后的class 文件会输出到此目录
pom.xml——maven 项目核心配置文件
注意:如果是普通的 java 项目,那么就没有webapp 目录。
五、Maven 工程的运行
进入 maven 工程目录(当前目录有 pom.xml 文件),运行 tomcat:run 命令。
根据上边的提示信息,通过浏览器访问:http://localhost:8080/maven-helloworld/
5.1 问题处理
如果本地仓库配置错误会报下边的错误:
分析:
maven 工程运行先从本地仓库找 jar 包,本地仓库没有再从中央仓库找,上边提示 downloading…
表示 从中央仓库下载 jar,由于本地没有联网,报错。
解决:
在 maven 安装目录的conf/setting.xml 文件中配置本地仓库即可。
写到最后
四季轮换,已经数不清凋零了多少, 愿我们往后能向心而行,一路招摇胜!
🐋 你的支持认可是我创作的动力
💟 创作不易,不妨点赞💚评论❤️收藏💙一下
😘 感谢大佬们的支持,欢迎各位前来不吝赐教