关于maven至少得知道这些事儿吧

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 一,前言前言是跟技术不相关的但是不是废话的内容,前言很有用!

首先maven很简单,就是根据pom.xml中的配置来加载jar包的。在服务器端有一个jar包的超级大仓库,里面有各种各样的jar包。


然后本地可以选择一个文件夹,这个文件夹叫本地库,可以放自己下载的jar包。


每个jar可以成为一个依赖(项目依赖jar包构建起来),为了区分不同的jar包(也就区分不同的依赖),给每个依赖设置一个唯一标志,maven里面叫做坐标,包含jar的名称和版本信息。


所以可以在pom.xml里面编辑依赖的坐标集合,告诉maven我的项目需要哪些jar,然后就交给maven就行了,不用自己再去下载管理jar包。


二,依赖的坐标样式

打开上篇文章[Spring那些事(1)]中自动生成pom.xml如下,我们可以看到一个很明显的依赖和坐标信息。


<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

 <modelVersion>4.0.0</modelVersion>

 <groupId>com.maoge</groupId>

 <artifactId>SpringInAction</artifactId>

 <packaging>war</packaging>

 <version>0.0.1-SNAPSHOT</version>

 <name>SpringInAction Maven Webapp</name>

 <url>http://maven.apache.org</url>

 <dependencies>

   <dependency>

     <groupId>junit</groupId>

     <artifactId>junit</artifactId>

     <version>3.8.1</version>

     <scope>test</scope>

   </dependency>

 </dependencies>

 <build>

   <finalName>SpringInAction</finalName>

 </build>

</project>


大体也能猜出依赖如下,其坐标为groupId:junit,artifactId:junit,version:3.8.1


<dependency>

 <groupId>junit</groupId>

 <artifactId>junit</artifactId>

 <version>3.8.1</version>

 <scope>test</scope>

</dependency>


也就是说,本来如果我们要导入一个junit3.8.1.jar类似的jar包,现在只需要在pom.xml的和之间添加这个依赖就OK了。maven会通过依赖的坐标找到唯一对应的jar包构建到项目中来。


三,如何确定依赖坐标是什么

比如现在我要导入一个非常常用的包,就是mysql-connector-java-5.1.39-bin.jar,我怎么知道填写哪个坐标呢。


很简单,有一个专门查询坐标的网站,网址:http://mvnrepository.com/


输入mysql-connector后点击Search,显示的第一个就是MySQL Connector/J,点开之后会有很多版本,我们点开5.1.39版本,看到Maven对应的文字是:


<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->

<dependency>

   <groupId>mysql</groupId>

   <artifactId>mysql-connector-java</artifactId>

   <version>5.1.39</version>

</dependency>


OK,直接把这部分复制到pom.xml即可


四,如何知道jar包已下载并构建到项目里面

很简单,当吧一个坐标复制到pom.xml中,并按Ctrl+S保存后,eclipse右下角会出现"Building Workspace"进度条,当进度走完即代表构建完成。


五,总结

OK,其实就是这么简单,比找jar包好弄多了,而且也不怕下载到太陈旧甚至是假的jar包。

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
4月前
|
Java Maven Spring
Maven重打包问题之maven-shade-plugin插件对于重复的class文件会如何处理
Maven重打包问题之maven-shade-plugin插件对于重复的class文件会如何处理
101 2
|
4月前
|
安全 Java Maven
Maven重打包问题之Maven的打包机制对于ClassPath的顺序是如何解决的
Maven重打包问题之Maven的打包机制对于ClassPath的顺序是如何解决的
|
6月前
|
前端开发 Java 关系型数据库
SpringBootWebProject学习2、默认maven使用
SpringBootWebProject学习2、默认maven使用
37 1
|
IDE Java 程序员
Maven基础学习---1、Maven的作用、什么是Maven
Maven基础学习---1、Maven的作用、什么是Maven
|
Java Maven
解决Maven依赖全部失败
解决Maven依赖全部失败
125 0
|
Java Maven 开发工具
解决Maven依赖本地jar包失败(可能原因之一)
解决Maven依赖本地jar包失败(可能原因之一)
662 0
|
安全 Java Maven
最安全的maven下载方法,保证之后用起来不报错
最安全的maven下载方法,保证之后用起来不报错
210 0
最安全的maven下载方法,保证之后用起来不报错
|
Java Maven 开发者
|
Java 测试技术 Maven
[Maven]引入自定义Jar包(在maven仓库找不到的那种)
Maven项目中,使用到了腾讯信鸽,腾讯信鸽JavaSDK中直接封装了一个jar包; 在项目中添加依赖,本地打包也能正常,可是到远程部署的时候就是NotFoundClass错误了; 多次测试思考后,发现maven引入自定...
2985 0
|
Java Maven
Maven 基础(二) | 解决依赖冲突的正确姿势
Maven 基础(二) | 解决依赖冲突的正确姿势
Maven 基础(二) | 解决依赖冲突的正确姿势