通过坐标定位 jar包。
二维坐标:点的定位。
X,Y轴。
![](https://img.haomeiwen.com/i6217104/268c0969dc8be10a.png)
三维坐标:GAV坐标
通过组织找到项目,定位版本。唯一定位一个jar包。
主要组成
groupId:组织标识(包名)
artifactId:项目名称
version:项目的当前版本
packaging:项目的打包方式,最为常见的jar和war两种
scope:用来控制依赖和编译,测试,运行的classpath的关系
compile: 默认编译依赖范围。对于编译,测试,运行三种classpath都有效
test:测试依赖范围。只对于测试classpath有效
provided:对于编译,测试的classpath都有效,但对于运行无效。因为由 容器已经提供,例如servlet-api。
案例:
依赖:
![](https://img.haomeiwen.com/i6217104/f5aa5ed3fdbb2b81.png)
![](https://img.haomeiwen.com/i6217104/cbfdb3d15f6559a8.png)
部署到tomcat中验证:
![](https://img.haomeiwen.com/i6217104/7ea8db3d024b0934.png)
没有 测试包,因为它的范围属于测试。
同时也发现:自动把本地仓库中的jar,放入lib目录,打包部署到web容器中去。本地项目仍然是没有lib目录。因为关联仓库使用。
加入servlet依赖
![](https://img.haomeiwen.com/i6217104/c86a79d9458ad4c8.png)
可以开发serlvet:
![](https://img.haomeiwen.com/i6217104/e7332d949e349097.png)
为什么这里的范围选择私有?为什么线上部署就不需要这个包呢?
因为tomcat自带这个包。
![](https://img.haomeiwen.com/i6217104/a1c8e0f2ad61249e.png)
以后做项目,公司做开发,不再需要拷贝jar 包。只需要拷贝坐标。
网友评论