Maven 是一个项目管理工具,可以对 Java 项目进行构建、依赖管理。Maven 也可被用于构建和管理各种项目,例如 C#,Ruby,Scala 和其他语言编写的项目。
从官网或其它镜像网站下选择相应版本进行下载…,我这里下载的是apache-maven-3.5.4-bin.zip。
目录
- 一、配置maven
- 二、设置环境变量
- 三、设置idea中的maven路径
- 四、安装依赖
一、配置maven
在conf文件夹内,找到setting.xml,并按如下操作编辑文档
首先,添加依赖的下载位置,第一次拉取是从网上仓库下载到此文件夹下的,之后运行代码时即可从中调取jar包。当发现依赖出问题时也可从此文件夹下删除相关文件,然后重新打入maven依赖。
我这里是设置在了d盘下的某文件夹,如下
<localRepository>D:\software\apache-maven-3.5.4\Local</localRepository>
然后,设置阿里云镜像下载地址,由于maven仓库的拉取jar包速度较慢,国内一般建议设置阿里云镜像作为下载点。
在mirrors配置下的配置项目,如下
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
二、设置环境变量
环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境变量,来更好的运行进程。
通过右击此电脑,转到系统属性设置,找到环境变量,之后就是在path中添加相应的位置。
添加MAVEN_HOME的环境变量,设置其为你的maven路径(解压包的位置),如图
再点击环境变量中的path,添加maven的执行文件的位置,如图
检查是否配好,可通过cmd的交互界面输入mvn -version,出现版本信息即配置成功
三、设置idea中的maven路径
1、在idea中找到Setting for New Projects的选项,并点击
2、在设置界面的搜索框中输入maven,找到其配置位置
这里需要两个配置,一个是配置maven文件夹所在的位置,一个是配置conf所在的位置,配置conf文件时要勾选override选项。配好之后点击apply或者ok以保存设置。
之后就可以新建项目来测试配置是否成功,我这里新建了一个maven项目后,可以发现maven位置已经更改为所需位置。
建立maven项目时可见有是否自动导入的选项,开启auto可随着pom文件的更改自动更改maven的设置选项,不开则需要每次手动选择。
另外,新建立的项目应确保至少在jdk1.8下的环境下,具体操作可以查看这篇博客,这里不再赘述。
四、安装依赖
maven依赖搜索:https://mvnrepository.com/tags/maven 可以在此网站上查询所需的maven依赖配置,直接复制到pom文件的dependencies下,以下载并打入依赖。
下面以java连接mysql自带的数据库为例,介绍安装步骤
1,在网站中搜索你需要的依赖
2、选择对应版本复制dependency
我的mysql版本是5.7.17,常用5.1.38版本的mysql-connect-java(一般建议选用5.1版本的)。在选择版本的界面下选择5.1.38以跳转。
之后点击Maven选项框以复制依赖
3、将所复制的依赖粘贴到pom文件的dependencies下,以下载依赖包
等待依赖不报红,且下方不显示Processing过程,则表示依赖打入成功。
4、代码编写运行
测试用例的代码
public static void main( String[] args ) throws ClassNotFoundException, SQLException {
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/world?useUnicode=true&characterEncoding=utf8&useSSL=true", "root", "root");
PreparedStatement pstat = conn.prepareStatement("select * from countrylanguage limit 10;");
ResultSet rs = pstat.executeQuery();
while (rs.next()) {
System.out.println(rs.getString("Language") + ":" + rs.getString("Percentage"));
}
conn.close();
}
在没有导依赖包时,出现异常:ClassNotFoundException
而导入依赖包后,则正常的查询到了数据