Maven学习----Maven安装与环境变量配置教程

目录
  • 一、Maven简介
    • 1. 什么是Maven
    • 2. Maven的作用
    • 3. 坐标的概念
    • 小结
  • 二、Maven安装配置【操作】
    • 1. Maven的仓库类型
    • 2. 下载与目录结构
    • 3. Maven安装配置
      • 3.1 安装Maven
      • 3.2 配置Maven仓库
    • 小结
  • 三、Maven项目的目录结构
    • 小结
  • 四、Maven构建项目
    • 1. 项目构建的生命周期
    • 小结
  • 五、Maven管理依赖和插件
    • Maven的依赖管理
      • 1. 在idea配置Maven(操作)
    • 2. 在idea创建Maven项目
      • 2.1 创建Maven的java项目
    • 2.2 创建Maven的web项目
      • 1.选择项目的骨架
      • 2.设置项目的坐标
      • 3. 引入依赖
      • 4. 依赖范围
    • 小结
      • jdk编译版本插件
      • tomcat7插件
  • Maven的插件
  • 六、Maven的私服
    • 搭建私服
    • 讲解
      • 什么是Maven的私服
    • 搭建Maven私服
      • 1. 下载nexus
      • 2. 安装nexus
      • 3. 启动nexus
      • 4. 登录nexus
      • nexus的仓库类型介绍
    • 小结
    • 使用私服
      • 把项目发布到私服
      • 从私服下载jar包
    • 小结
    • 上传jar到本地仓库和私服
      • 目标
      • 把第三方jar打包到本地仓库
      • 把第三方jar打包发布到私服
      • 参数说明
  • 七、Lombok
    • 1. Lombok介绍与配置
      • 什么是Lombok
      • Lombok的作用
      • Lombok的配置
    • 2. Lombok的常用注解
  • 附:添加依赖出错怎么办
    • 现象:
    • 原因:
      • 解决:
  • 总结

一、Maven简介

1. 什么是Maven

​ Maven:是Apache提供的免费开源的项目管理工具。它提供了一个项目对象模型(pom.xml)、一个依赖管理系统(根据坐标,帮我们引入依赖)、一套项目生命周期(帮我们方便的进行项目构建)、一组标准集合(Maven工程的目录结构规范,坐标规范)、和一个插件管理系统(提供了进行项目构建的命令)。

2. Maven的作用

  • 项目构建:一个项目开发之后,经历的编译、测试、打包、安装、部署等等一系列的过程,叫项目构建

    • 主要是测试、运维/实施人员使用的
  • 依赖管理:Maven可以帮我们管理jar包,可以轻松的解决依赖的冲突问题
    • 依赖:通常指jar包,不仅仅是jar包
  • 模块化创建项目

3. 坐标的概念

  • 坐标:被Maven管理的每个项目,都必须有自己的唯一标识,这个唯一标识叫坐标坐
  • 标的组成:由三部分组成
    • groupId:公司名、组织名 域名倒写。比如:c3p0, com.jd
    • artifactId:项目名、包名。比如:c3p0
    • version:版本号。比如:0.9.1.21.0-SNAPSHOT, 5.2.0-RELEASE

小结

  • 什么是Maven:是Apache提供的一个开源免费的项目管理工具
  • Maven的作用:
    • 项目构建:编译、测试、打包、安装、部署等等一系列的过程,叫项目构建
    • 依赖管理:帮我们管理jar包依赖
    • 模块化创建项目
  • 坐标的概念:
    • 被Maven管理的每个项目/jar包,其唯一标识叫坐标
    • 由三部分组成:
      • groupId:企业名/组织名 域名倒写
      • artifactId:包名/项目名
      • version:版本号

二、Maven安装配置【操作】

1. Maven的仓库类型

1.本地仓库:本地缓存jar包的文件夹

  1. 本地仓库默认在:C:\Users\电脑的用户名\.m2\repository
  2. 通常会修改配置文件,修改本地仓库的路径

2.远程仓库(私服):一些企业、组织、社区搭建的仓库服务

  1. 通常企业里人自己搭建私服。私服里的jar包大多数还是来自于中央仓库
  2. 有些是企业内部自己搭建、自己使用的
  3. 有些是企业搭建面向整个互联网的,比如:阿里私服

3.中央仓库

  1. 是Maven官方团队维护的仓库,里边有最全的jar包。
  2. 但是没有授权的jar包,中央仓库里没有,比如:Oracle驱动包
  3. 地址:https://repo1.maven.org/maven2

2. 下载与目录结构

maven
  |--bin   Maven的可执行命令文件夹
  |--boot  Maven的引导程序(类加载器)
  |--conf  配置文件夹
  |--lib   Maven的核心程序代码

3. Maven安装配置

3.1 安装Maven

1.Maven是免安装的,直接解压

  1. 注意:解压路径里,不要有中文、空格、特殊字符

2.注意检查JDK环境变量是否正确

  1. Maven软件是Java语言编写的

3.配置Maven环境变量:

  1. 增加MAVEN_HOME=Maven的解压目录
  2. 修改Path中添加 %MAVEN_HOME%\bin

1.验证Maven配置

  1. 打开cmd,输入命令:mvn -version

3.2 配置Maven仓库

配置步骤:

  1. 新建一个目录,例如 :repository,目录里不能有中文、空格、特殊字符
  2. 比如我的路径为:D:\develop_software\maven\repository
  3. 修改Maven的conf\settings.xml配置文件

扩展:

  1. 修改settings.xml里,设置Maven编译的版本jdk1.8。在<profiles>里边增加:
<profile>
    <id>jdk-1.8</id>
    <activation>
        <activeByDefault>true</activeByDefault>
        <jdk>1.8</jdk>
    </activation>
    <properties>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
    </properties>
</profile>

小结

仓库类型

  • 本地仓库:自己电脑上缓存jar包的文件夹
  • 远程仓库(私服):一些企业、社区、组织自己搭建的仓库服务
  • 中央仓库:Maven官方团队维护仓库服务

maven的安装:

  1. 解压。注意:解压的目录里不要有中文、空格、特殊字符
  2. 配置环境变量:
    1. 新增MAVEN_HOME, 值就是maven软件的解压目录
    2. 修改Path,值里新增%MAVEN_HOME%\bin

配置本地仓库:

  • 创建repository目录里不要有中文、空格 、特殊字符
  • 修改Maven的conf\settings.xml,增加本地仓库的配置:<localRepository>标签

三、Maven项目的目录结构

一个项目要想使用Maven进行管理,那么这个项目的目录结构就必须要符合Maven的要求:

maven项目
	|--pom.xml                 项目对象模型文件,一个Maven项目必定有pom.xml文件
	|--src
		|--main                项目的主体程序代码目录
		|	|--java            项目的Java程序代码放在这文件夹里
		|	|--resources       项目的配置文件放在这里
		|	|--webapp          项目的web资源放在这里,html,css,js,jsp,音频,图片,视频等等
		|		|--WEB-INF
		|		|--其它web资源
		|--test                项目的单元测试代码目录
			|--java            项目的单元测试代码
			|--resources       项目单元测试需要的配置文件

小结

src\main\java:放主体程序代码的java文件

src\main\resources:放主体程序代码的配置文件

src\main\webapp:放主体程序代码的web资源:html、css、js、jsp等等

四、Maven构建项目

1. 项目构建的生命周期

Maven命令执行的规律:

clean:			clean
compile:		compile
test:			compile=>test
package:		compile=>test=>package
install:		compile=>test=>package=>install
人的生命周期:婴儿=>儿童=>少年=>青年=>中年=>老年

Maven有三套生命周期

  1. 清理生命周期:CleanLifeCycle

    1. 有常用命令:clean
  2. 默认生命周期(构建生命周期):DefaultLifeCycle
    1. 有常用命令:compile->test->package->install->deploy
  3. 站点生命周期:SiteLifeCycle
    1. 有常用命令:site。生成Maven项目的描述信息文档
  • 如果执行了一个目标命令:Maven会把生命周期里的命令,从第一个一直执行到目标命令为止

小结

常用命令:

  • mvn clean:清理。删除掉target目录
  • mvn compile:编译。把主体程序代码进行编译,放到target目录里
  • mvn test:测试。编译并执行单元测试代码
  • mvn package:打包。Java项目打成jar包,web项目打包war包
  • mvn install:安装。把程序包安装到本地仓库,安装位置是坐标对应的文件夹

Maven的生命周期

  • 清理生命周期CleanLifeCycle:clean
  • 默认生命周期/构建生命周期DefaultLifeCycle:compile=>test=>package=>install=>deploy
  • 站点生命周期SiteLifeCycle:site
  • 生命周期的作用:只要执行一个目标命令,Maven会从生命周期里第一个阶段开始,执行到目标命令为止

五、Maven管理依赖和插件

Maven的依赖管理

  • 把Maven配置到idea中
  • 在idea里创建Maven的java项目
  • 在idea里创建Maven的web项目
  • Maven项目中,引入依赖的方法
  • Maven的依赖范围配置,解决jar包冲突

1. 在idea配置Maven(操作)

  • 配置Maven

  • 增加运行的配置项:-DarchetypeCatalog=internal

2. 在idea创建Maven项目

2.1 创建Maven的java项目

1.创建Module,选择Maven类型,选择骨架org.apache.maven.archetypes:maven-archetype-quickstart

2.设置项目的坐标

3.再继续步骤,跟以前的一样:设置module的名称和位置

注意:不要和已有的其它module重名或者重位置

4.创建后,如果弹窗Maven projects need to be imported,就选择 启动自动导入。

作用是:如果pom.xml文件有变更,Maven会自动读取,立即生效;否则就要手动导入

5.如果文件夹缺失,就创建补全,然后刷新

2.2 创建Maven的web项目

1.选择项目的骨架

2.设置项目的坐标

如果上边Add as module toParent是有配置的,那么要在右边全部选择none

3. 引入依赖

如果项目中需要使用jar包,只需要把jar包的坐标配置到项目的pom.xml中即可。在pom.xml的<dependencies>标签里增加以下内容:

<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.12</version>
    <scope>依赖范围</scope>
</dependency>

可以在pom.xml里,输入dep,会自动补充坐标模板,我们填充坐标值即可

可以使用 alt+insert,会弹出依赖导入的界面,可以从本地仓库里搜索依赖

如果不知道依赖的坐标,可以从中央仓库搜索坐标:https://mvnrepository.com/

4. 依赖范围

如果项目中引入的jar包过多,可能会出现jar包冲突,我们可能设置jar包不同的依赖范围来处理jar包冲突。

Maven的依赖范围有:

  • compile:默认的依赖范围,全范围有效。
  • test:单元测试有效。src/test里有效,src/main里无效
  • provided:编译时有效,运行时使用其它地方提供的jar包。
  • runtime:运行时有效,编译时无效。比如:数据库驱动包
  • system:引入仓库之外的本地jar包。少用

实际开发中特殊的jar包

  • Junit:依赖范围通常设置为test
  • servlet-api, jsp-api:依赖范围通常设置为provided
  • 数据库驱动包:依赖范围可以是默认的,也可以是runtime
  • 其它包,绝大多数都是默认依赖范围compile

小结

依赖范围:

  • compile:默认的。编译时有效,运行时有效,单元测试有效
  • test:单元测试有效(src\main\test)里有效
    • 单元测试Junit的包
  • provided:编译时有效,运行时无效(备胎包)
    • servlet-api,jsp-api
  • runtime:编译时无效,运行时有效
    • 数据库驱动包
  • system:引用仓库之外的本地jar包,少用

Maven的插件

  • maven插件可以完成一些特定的功能。例如,集成jdk插件可以方便的修改项目的编译环境;集成tomcat插件后,无需安装tomcat服务器就可以运行tomcat进行项目的发布与测试。
  • 在pom.xml的plugins标签中,通过plugin标签引入maven的功能插件。

jdk编译版本插件

  • <plugins>标签,放在pom.xml的<build>标签内部
<!--jdk编译插件-->
<plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.2</version>
        <configuration>
            <source>1.8</source>
            <target>1.8</target>
            <encoding>utf-8</encoding>
        </configuration>
    </plugin>
</plugins>

tomcat7插件

  • <plugins>标签,放在pom.xml的<build>标签内部
<plugins>
    <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <configuration>
            <!-- 指定端口 -->
            <port>82</port>
            <!-- 项目路径 -->
            <path>/</path>
        </configuration>
    </plugin>
</plugins>

六、Maven的私服

搭建私服

  • 了解私服的概念
  • 搭建私服

讲解

什么是Maven的私服

  • 公司在自己的局域网内搭建自己的远程仓库服务器,称为私服
  • 私服服务器即是公司内部的 maven 远程仓库, 每个员工的电脑上安装 maven 软件并且连接私服服务器,员工将自己开发的项目打成 jar 并发布到私服服务器,其它项目组从私服服务器下载所依赖的构件(jar)。
  • 私服还充当一个代理服务器,当私服上没有 jar 包会从互联网中央仓库自动下载,如下图 :

搭建Maven私服

1. 下载nexus

  • Nexus 是 Maven 仓库管理器, 通过 nexus 可以搭建 maven 仓库,同时 nexus 还提供强大的仓库管理功能,构件搜索功能等。
  • 下载地址: http://www.sonatype.org/nexus/archived/ ,下载: nexus-2.12.0-01-bundle.zip

2. 安装nexus

1.解压nexus-2.12.0-01-bundle.zip。注意:解压路径里不要有中文、空格、特殊字符

2.以管理员方式打开cmd,切换进入解压目录的bin文件夹里,运行命令:nexus.bat install

  1. 把nexus安装成为Windows的服务

3. 启动nexus

  • 启动nexus服务:以管理员方式打开cmd,输入命令:net start nexus(第一次启动比较慢)

    • 如果把nexus服务设置为开机自启动,以后就不需要再手动启动nexus服务了
    • 但是通常是nexus服务器上设置。我们自己电脑上,没有必要设置开机自启动
  • 关闭nexus服务:以管理员方式打开cmd,输入命令:net stop nexus

4. 登录nexus

打开浏览器,输入地址:http://localhost:8081/nexus

  • 可以打开nexus的conf/nexus.properties文件,修改端口号,重启nexus服务后生效

登录“Log in”,输入帐号和密码进行登录(帐号admin,密码admin123)

nexus的仓库类型介绍

  • hosted:宿主仓库, 部署自己的 jar 到这个类型的仓库,包括 releases 和 snapshot 两部分, Releases 公司内部发布版本仓库、 Snapshots 公司内部测试版本仓库
  • proxy:代理仓库, 用于代理远程的公共仓库,如 maven 中央仓库,用户连接私服,私服自动去中央仓库下载 jar 包或者插件。
  • group:仓库组,用来合并多个 hosted/proxy 仓库,通常我们配置自己的 maven 连接仓库组。
  • virtual:虚拟仓库,兼容 Maven1 版本的 jar 或者插件

小结

  • hosted:宿主仓库。nexus私服本身的仓库
  • proxy:代理仓库。私服所代理的仓库
  • group:仓库组。针对于使用者,只要配置一个仓库组的地址,就可以引用组里定义的所有子库
  • virtual:虚拟仓库

使用私服

  • 把项目发布到私服
  • 从私服下载jar包

把项目发布到私服

使用场景

  • 企业中多个团队协作开发通常会将一些公用的组件、开发模块等发布到私服供其它团队或模块开发人员使用。
  • 本例子假设多团队分别开发。某个团队开发完在common_utils, 将 common_utils发布到私服供其它团队使用

配置

第一步:在用户自己的Maven软件里修改conf/settings.xml

  • servers标签里,配置私服的帐号和密码
<server>
    <id>releases</id>
    <username>admin</username>
    <password>admin123</password>
</server>
<server>
    <id>snapshots</id>
    <username>admin</username>
    <password>admin123</password>
</server>

第二步:在用户需要发布的私服的项目pom.xml里,配置私服仓库的地址。

  • 本公司的自己的 jar 包会上传到私服的宿主仓库,根据工程的版本号决定上传到哪个宿主仓库
  • 如果版本为 release 则上传到私服的 release 仓库,如果版本为snapshot 则上传到私服的 snapshot 仓库
  • 把以下内容写到项目的pom.xml的根标签里
<distributionManagement>
    <repository>
        <!-- 注意:id的值,是刚刚在settings.xml中配置的server的id -->
        <id>releases</id>
        <url>http://localhost:8081/nexus/content/repositories/releases/</url>
    </repository>
    <snapshotRepository>
        <!-- 注意:id的值,是刚刚在settings.xml中配置的server的id -->
        <id>snapshots</id>
        <url>http://localhost:8081/nexus/content/repositories/snapshots/</url>
    </snapshotRepository>
</distributionManagement>

测试

1.启动nexus服务(如果已启动,就不需要做这一步)

2.在项目里执行Maven的deploy命令:

  1. 根据本项目pom.xml中version定义决定发布到哪个仓库
  2. 如果version定义为xx-snapshot,项目将发布到 nexus 的 snapshot仓库
  3. 如果version定义为xx-release,项目将发布到 nexus的 release 仓库

从私服下载jar包

使用场景

  • 没有配置 nexus的时候,如果本地仓库没有,就会去中央仓库下载,下载速度不稳定
  • 通常在企业中会在局域网内部署一台私服服务器。这样:
    • 本地项目首先去本地仓库找 jar;
    • 如果没有找到则连接私服从私服下载 jar 包;
    • 如果私服没有 jar 包,私服同时作为代理服务器从中央仓库下载 jar 包

好处是:

  1. 由私服对公司项目的依赖 jar 包统一管理
  2. 可以提高下载速度, 项目连接私服下载 jar 包的速度,要比项目连接中央仓库的速度快的多。

配置

第一步:在settings.xmlprofiles标签下配置:

注:由于settings.xml中没有repositories标签,所以要使用profile标签来配置仓库

<profile>
    <!--profile 的 id-->
    <id>dev</id>
    <repositories>
        <repository>
            <!--仓库 id, repositories 可以配置多个仓库,保证 id 不重复-->
            <id>nexus</id>
            <!--仓库地址,即 nexus 仓库组的地址-->
            <url>http://localhost:8081/nexus/content/groups/public/</url>
            <!--是否下载 releases 构件-->
            <releases>
                <enabled>true</enabled>
            </releases>
            <!--是否下载 snapshots 构件-->
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
    <pluginRepositories>
        <!-- 插件仓库, maven 的运行依赖插件,也需要从私服下载插件 -->
        <pluginRepository>
            <!-- 插件仓库的 id 不允许重复,如果重复后边配置会覆盖前边 -->
            <id>public</id>
            <name>Public Repositories</name>
            <url>http://localhost:8081/nexus/content/groups/public/</url>
        </pluginRepository>
    </pluginRepositories>
</profile>

第二步:激活profile定义的仓库

激活后,配置的仓库才会生效

<activeProfiles>
	<activeProfile>dev</activeProfile>
</activeProfiles>

测试 创建Maven应用testdownload,配置依赖

<dependency>
    <groupId>com.baidu</groupId>
    <artifactId>commons-utils</artifactId>
    <version>1.0-SNAPSHOT</version>
</dependency>

编译项目,查看日志会出现:

查看本地仓库里,会有从私服下载的jar包

小结

把项目发布到私服:

  1. 在Maven的settings.xml里,配置仓库的帐号和密码
  2. 在Maven项目的pom.xml里,配置仓库的地址
  3. 执行Maven命令:mvn deploy

从私服里下载jar:

  1. 在settings.xml里配置仓库地址
  2. 在settings.xml里激活仓库的配置
  3. 在Maven项目里,配置依赖
    1. 如果这个依赖,在本地仓库里没有,Maven就会从私服里下载到本地仓库,再引入到Maven项目里

上传jar到本地仓库和私服

目标

  • 把第三方jar打包到本地仓库
  • 把jar打包发布到私服

把第三方jar打包到本地仓库

  • 如果有一个jar不在本地仓库、不在私服、不在中央仓库。我们可以把jar安装到本地仓库中,方便后续使用
  • cmd命令示例:

mvn install:install-file -DgroupId=com.alibaba -DartifactId=fastjson -Dversion=1.1.37 -Dfile=fastjson-1.1.37.jar -Dpackaging=jar

  • 查看本地仓库,验证是否安装成功

把第三方jar打包发布到私服

  • 第一步:在settings.xml中配置私服的server信息
<server>
    <id>thirdparty</id>
    <username>admin</username>
    <password>admin123</password>
</server>
  • 第二步:执行命令

mvn deploy:deploy-file -DgroupId=com.alibaba -DartifactId=fastjson -Dversion=1.1.37 -Dpackaging=jar -Dfile=fastjson-1.1.37.jar -Durl=http://localhost:8081/nexus/content/repositories/thirdparty/ -DrepositoryId=thirdparty

  • 第三步:查看私服的第三方仓库,验证是否发布成功

参数说明

  • DgroupIdDartifactId构成了 jar 包的坐标,项目就是依靠这两个属性定位。可以自己起名
  • Dfile 表示需要上传的 jar 包的位置。
  • Durl 私服上仓库的位置,打开 nexus——>repositories 菜单,可以看到该路径。
  • DrepositoryId 服务器的表示 id,在 nexus 的 configuration 可以看到。
  • Dversion 表示版本信息。

​ 上传成功后,在 nexus 界面点击 3rd party 仓库可以看到这包。

七、Lombok

1. Lombok介绍与配置

  • 什么是Lombok
  • Lombok的作用
  • Lombok的配置

什么是Lombok

  • Lombok是一个Java库,能自动插入编辑器并构建工具,简化Java开发。
  • 官网: https://www.projectlombok.org/

Lombok的作用

通过添加注解的方式,帮我们生成一些方法,提高开发人员的开发效率。

例如:

  • 开发中经常需要写的javabean,要添加相应的getter/setter,也许还要去写构造器、equals等方法
  • 当属性多时,会出现大量的getter/setter方法,这些显得很冗长也没有太多技术含量
  • 使用Lombok,可以帮我们生成这些方法,我们就不用自己编写了

Lombok的配置

  • 添加maven依赖
<dependency>
	<groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
	<version>1.18.8</version>
	<scope>provided</scope>
</dependency>

安装插件

  • 注意:Lombok插件暂不支持idea2020
  • 使用Lombok还需要插件的配合。
  • 打开idea的设置,点击Plugins,点击Browse repositories,在弹出的窗口中搜索lombok,然后安装即可

  • 解决编译时出错问题

​ 编译时出错,可能是没有enable注解处理器。Annotation Processors > Enable annotation processing。设置完成之后程序正常运行。

2. Lombok的常用注解

目标

@Data

@Getter/@Setter

@ToString

@NoArgsConstructor, @AllArgsConstructor

@Data

  • @Data注解在类上,会为类的所有属性自动生成setter/getter、equals、canEqual、hashCode、toString方法,如为final属性,则不会为该属性生成setter方法。
@Data
public class User implements Serializable{
    private Integer id;
    private String username;
    private String password;
    private String address;
    private String nickname;
    private String gender;
    private String email;
    private String status;
}

@Getter/@Setter

  • 如果觉得@Data不够精细,可以使用@Getter/@Setter注解
  • 此注解用在属性上,可以为相应的属性自动生成Getter/Setter方法.
public class User implements Serializable{
    @Setter
    @Getter
    private Integer id;
    private String username;
    private String password;
    private String address;
    private String nickname;
    private String gender;
    private String email;
    private String status;
}

@ToString

  • 类上使用@ToString注解,Lombok会生成一个toString()方法
  • 生成的toString方法会输出类名、所有属性(会按照属性定义顺序),用逗号来分割。
  • 通过exclude属性指定忽略字段不输出,
@ToString(exclude = {"id"})
public class User implements Serializable{
    private Integer id;
    private String username;
    private String password;
    private String address;
    private String nickname;
    private String gender;
    private String email;
    private String status;
}

@xxxConstructor

@NoArgsConstructor: 无参构造器

@NoArgsConstructor
public class User implements Serializable{
    private Integer id;
    private String username;
    private String password;
    private String address;
    private String nickname;
    private String gender;
    private String email;
    private String status;
}
  • @AllArgsConstructor: 全参构造器
@AllArgsConstructor
public class User implements Serializable{
    private Integer id;
    private String username;
    private String password;
    private String address;
    private String nickname;
    private String gender;
    private String email;
    private String status;
}

附:添加依赖出错怎么办

现象:

  • 在pom.xml里添加依赖坐标后,报红,引入依赖失败

原因:

  • 可能有多方面因素导致,最常见的原因是:

    • 网络不稳定,导致从中央仓库中下载依赖时失败
    • 本地仓库中有大量的*.lastUpdated文件,是下载依赖出错后遗留的不完整数据

解决:

第一步:配置阿里云的仓库镜像

打开Maven软件里conf/settings.xml

<mirrors>标签中添加如下内容:

<mirror>
    <id>alimaven</id>
    <name>aliyun  maven</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    <mirrorOf>central</mirrorOf>
</mirror>

第二步:删除本地仓库里的缓存文件

  • .lastUpdated结尾的文件,是下载依赖失败后遗留的文件,需要清除掉

1.在本地仓库文件夹里搜索*.lastUpdated

2.把搜索到的所有文件全部删除

第三步:重新添加依赖

  • pom.xml中,删除原有的所有依赖
  • 重新添加依赖进去。
  • Maven会自动重新导入依赖,如果本地仓库中没有,就会自动从阿里云仓库镜像下载依赖

总结

本篇文章就到这里了,希望可以帮到你,也希望您能多多关注我们的更多内容!

(0)

相关推荐

  • Maven学习教程之搭建多模块企业级项目

    首先,前面几次学习已经学会了安装maven,如何创建maven项目等,最近的学习,终于有点进展了,搭建一下企业级多模块项目. 好了,废话不多说,具体如下: 首先新建一个maven项目,pom.xml的文件如下: 搭建多模块项目,必须要有一个packaging为pom的根目录.创建好这个maven项目后,我们对着项目右键-->new 输入你的项目名称 这里就不重复说创建项目了,创建好的目录结构在eclipse中如下: 说明一下这些项目具体都是干嘛的: easyframework-model:数据模

  • maven学习-初窥门径

    最近在一个公司实习,由于刚出校门对公司开发流程还是不太清楚.对Maven知之甚少,最近我就在恶补Maven. Maven定义 Maven 是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model), 一组标准集合, 一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑. 当你使用 Maven 的时候

  • maven 环境变量的配置详解

    我的电脑是win10_64位的. 一.安装,我使用的是免安装版的,直接解压缩就可以使用. 二.配置环境变量. 1. 打开环境变量配置.右键计算机→属性→高级系统设置→高级→环境变量,在系统变量中配置. 2. 配置MAVEN_HOME.在系统变量中新建,变量名MAVEN_HOME,变量值,maven文件夹路径,我的路径是F:\Wab\资料\maven\资料\apache-maven-3.2.3,最好不要有中文,我比较懒,不想改,保存. 3.配置path,找到path系统变量,点开,新建,输入%MA

  • Java学习笔记之Maven篇

    一.maven能做什么? [本质]:将原材料(各种Java本身的类,不包括jar包)生产成为可运行的工程项目. Maven - 自动化构建工具,英文单词是专家内行的意思 1.方便管理jar包,jar包冲突? 2.打包web项目(节省jar包空间) 1.1 两大应用 [依赖管理]maven的jar包放在jar包仓库,maven只存储jar包的坐标.(代码重用思想) [一键构建]编译.测试.运行.打包.安装.部署 操作一体化 [POM:Project Object Model 工程对象模型 [pom

  • maven环境变量配置以及失败原因解析

    本文为大家分享了maven环境变量配置的具体方法,供大家参考,具体内容如下 一.maven环境配置 1.解压apache-maven-x.x.x-bin.zip,最好不要解压到C盘 2.配置环境变量,右击"我的电脑"--"属性"--"高级系统设置"--"环境变量","系统变量"--"新建" 填写maven安装目录: 变量名:MAVEN_HOME 变量值:D:\apache-maven\a

  • Linux jdk安装及环境变量配置教程(jdk-8u144-linux-x64.tar.gz)

    建议先用sudo su命令切换到root账号,否则之后可能无权限操作 /opt 目录. 一.下载和解压 先去官网下载压缩包jdk-8u144-linux-x64.tar.gz. 下载之后,终端输入 cp jdk-8u144-linux-x64.tar.gz /opt 把这个压缩包复制到opt目录下, 然后进入到opt目录,输入 tar -zxvf jdk-8u144-linux-x64.tar.gz 解压缩. 二.编辑etc目录下的profile文件 sudo vi /etc/profile 用

  • Win8下Android SDK安装与环境变量配置教程

    Win8下Android SDK的安装与环境变量配置,具体内容如下 1.下载Android SDK,点击安装,直接默认路径即可! 进入该网站后往下拉就能找到sdk下载的位置,选择图中红圈的程序进行下载 2.安装过程比较简单,按照平时安装软件的方式来就行,默认路径安装后,安装完成,开始配置环境变量. 3.打开计算机属性--高级系统设置--环境变量 4.新建一个系统变量,变量名:ANDROID_HOME,变量值:C:\Program Files \android-sdk(以你安装目录为准,确认里面有

  • java1.8安装及环境变量配置教程

    一.前言 虽然jdk1.9版本已经问世,但是许多其他的配套设施并不一定支持jdk1.9版本,所以这里仅带领你配置jdk1.8.而jdk1.9的操作也几乎是相同的. 本教程适用于windows10 64位操作系统配置jdk1.8 二.下载并安装 2.1下载 进入官网的下载地址jdk1.8下载地址 出现如下界面 按照红色方框的指示,先选中 [Accept License Agreement],表示同意安装使用协议:选择Windows x64(即64位操作系统),点击下载:等待下载完成即可. 2.2安

  • python解释器pycharm安装及环境变量配置教程图文详解

    1.python解释器安装 下载地址:https://www.python.org/ 打开官网,点击downloads,选择操作系统,以windows为例: 选择python2与python3解释器版本(以python3.6.6及python2.7.16为例): 以python3.6.6为例,根据操作系统下载不同安装包(python2.7.16类似) 下载完成后,双击打开,选择自定义安装: 点击完成后,选择下一步,修改默认安装路径(方便查找,添加环境变量),完成后点击安装 2.配置环境变量 右击

  • Maven学习----Maven安装与环境变量配置教程

    目录 一.Maven简介 1. 什么是Maven 2. Maven的作用 3. 坐标的概念 小结 二.Maven安装配置[操作] 1. Maven的仓库类型 2. 下载与目录结构 3. Maven安装配置 3.1 安装Maven 3.2 配置Maven仓库 小结 三.Maven项目的目录结构 小结 四.Maven构建项目 1. 项目构建的生命周期 小结 五.Maven管理依赖和插件 Maven的依赖管理 1. 在idea配置Maven(操作) 2. 在idea创建Maven项目 2.1 创建Ma

  • win10下mysql 8.0.12 安装及环境变量配置教程

    Windows10平台下MySQL的安装.配置.启动和登录及配置环境变量 1.1 在MySQL的官网上下载安装文件并配置MySQL 提示:在安装过程中,window防火墙会弹出是否允许更改硬件等提示,点击是. 360安全卫士等会将MySQL等数据库文件误报成木马程序,建议安装过程中关闭360,仅保留window防火墙即可. MySQL安装过程失败,很多是重新安装MySQL所导致,在卸载MySQL时,也要把之前的安装目录删除掉,一般在program file文件夹中.也要把MySQL的DATA目录

  • Windows下apache ant安装、环境变量配置教程

    一.安装ant 到官方主页http://ant.apache.org下载新版(目前为Ant1.8.1)的ant,得到的是一个apache-ant-1.8.1-bin.zip的压缩包.将其解压到你的硬盘上,例如:C:\apache-ant-1.8.1. 二.配置环境变量 window中设置ant环境变量: ANT_HOME    C:/ apache-ant-1.8.1 path        C:/ apache-ant-1.8.1/bin classpath   C:/apache-ant-1

  • win10 java(jdk安装)环境变量配置和相关问题

    写在前面的话 咱也不喜欢废话,图片和方法我都会特别标注出来的,方法绝对详细,并且会把各个细节标注出来. 刚开始学习java在环境配置上遇到了很多问题,东看看西看看最终还是解决了.感觉自己碰到的问题蛮全的,这里统一写一篇文章,不光是做个纪录也是方便大家互相学习解决. 前置条件(阅读以下内容需要掌握的知识) 有一台装配了win10的电脑,可以连接网络懂得基本的电脑操作即可. 其他的按照本教程来一遍就可以,保证达到最终配置成功的目的. 准备 先了解一下java JVM :英文名称(Java Virtu

  • Win10下jdk安装及环境变量配置详细教程

    目录 前言 一. 准备工作 二.安装 三. 配置环境变量 1.点击"新建"会出现一个弹窗: 2.新建CLASSPATH变量 3.配置path,找到path,双击或者点编辑 四.验证环境变量配置 ① java 验证 ② javac 验证 ③ java -version 验证 前言 为什么写这篇文章呢,因为我不想再去百度搜别人的文章了,所以自己写一篇以作记录. 一. 准备工作 JDK8下载地址 JDK8下载地址2 由于有的读者说Oracle需要账号才能下载,不想那么麻烦再去注册一个,那么你

  • Windows10系统下JDK1.8的下载安装及环境变量配置的教程

    点击此处:官网下载根据自己的系统 ,下载相应的JDK版本. 1. JDK1.8安装 1.双击下载的安装包(.exe文件),进行安装. 2.点击"下一步" 3.这里可以自行选择安装目录,笔者选择安装在D盘.点击"更改",进入文件夹,在D盘中相应的位置建立与默认文件夹同名的文件夹. 4.稍等片刻. 5.与第3步相同,(第6,7步给出详细步骤). 6.浏览本地文件夹. 7.新建文件夹,名称与默认文件夹名称相同. 8.等待安装完成 9.成功安装,点击"关闭&quo

随机推荐