区块链技术博客
www.b2bchain.cn

Maven的配置及使用

这篇文章主要介绍了Maven的配置及使用的讲解,通过具体代码实例进行22972 讲解,并且分析了Maven的配置及使用的详细步骤与相关技巧,需要的朋友可以参考下https://www.b2bchain.cn/?p=22972

本文实例讲述了2、树莓派设置连接WiFi,开启VNC等等的讲解。分享给大家供大家参考文章查询地址https://www.b2bchain.cn/7039.html。具体如下:

这里写目录标题

    • 一、什么是maven?
    • 二、maven项目的基本结构
    • 三、maven的配置文件
      • 1、全局配置文件(settings.xml)
        • 1)settings.xml文件位置
        • 2)指定本地仓库
        • 3)配置阿里云镜像:
      • 2、项目配置文件(pom.xml)
        • 1)依赖
        • 2)插件
    • 四、maven的生命周期

一、什么是maven?

Apache Maven 是一种用于软件项目管理工具,基于 Project Object Model(POM),用来管理项目的构建,汇报及文档生成等功能。

我们知道了maven是一种项目管理工具之后,最主要的还是使用它,那么通过maven创建项目的详细步骤又是什么呢?我在另一篇博客中已经详细写出: IntelliJ IDEA中创建一个Maven项目以及对maven的设置.

maven的作用:

maven 的目标是完成项目构建解决的一切繁琐事宜。它的主要作用有:

  • 提供一个标准的项目工程目录
  • 提供项目描述
  • 提供强大的版本管理工具
  • 可以分阶段的进行构建过程
  • 提供了丰富的插件库使用

二、maven项目的基本结构

创建好maven项目之后,我们来看看maven项目的基本结构,通过上面的博客,我们创建好的maven项目结构如下图所示:
Maven的配置及使用

  • srcmainjava: Java代码的根路径,这个文件夹下就可以写我们的servlet代码
  • srcmainresources: 一般是用于同时部署的一些资源文件,例如图片、音频、视频等
  • srctestjava: 一般用来放一些测试代码
  • pom.xml: 是 maven 最重要的文件,是 maven 的配置描述文件,用来配置一些项目的描述信息或者是项目中所需要的依赖文件。
  • target: maven项目默认的编译路径
    • clasess: src/main/javaz中的类编译为class文件;src/main/resources复制过来;
    • test-classess: src/test/java中的类编译为class文件:src/test/resources复制过来;

更加细分见下图所示:
Maven的配置及使用

三、maven的配置文件

1、全局配置文件(settings.xml)

settings.xml:是指定本地仓库,指定远程仓库

1)settings.xml文件位置

settings.xml文件会在两个目录下存在:

1、Maven安装目录(全局):%MAVEN_HOME%confsettings.xml;
也就是我们在哪安装的,安装的目录的conf文件夹下就会有一个settings.xml文件;比如我自己就在D盘的某个路径下,如下图所示:
Maven的配置及使用

2、用户安装目录(系统中指定的用户目录,一般在C盘下):${user.home}.m2settings.xml
如下图实我自己电脑上系统的用户目录:
Maven的配置及使用
注意:

如果两个目录都有settings.xml文件,那么系统分配的用户目录(也就是C盘中的)占主导地位

但是我们一般建议在项目中使用自己指定的本地目录,因为:

  • 如果指定了settings.xml的位置,本地仓库的位置就随着它一块变(比如我是用的是我自己指定的D盘中的settings.xml,那么maven仓库的位置也就跟着变为D盘中的仓库,而不会是C盘的)。
  • 并且我们在项目中使用的一些依赖都会下载到maven仓库,如果放在C盘会占据C盘的空间(C盘一般不建议放一些用户自己的东西)

2)指定本地仓库

打开settings.xml,如下图所示,在标签中输入自己要设置的本地仓库的路径即可,下图是我自己设置的本地仓库的路径。

Maven的配置及使用

3)配置阿里云镜像:

通常,默认的仓库因为网络原因,下载都比较慢,我们可以把自己的仓库更新为阿里的版本。

找到标签,在其中配置阿里云镜像,如下图所示;

Maven的配置及使用

因为使用此Maven的配置作为版本控制,都会从阿里云的仓库中下载代码,速度特别快。

2、项目配置文件(pom.xml)

pom.xml 文件后缀名表示这个文件是用 XML 格式进行组织。简单的去理解, XML是一种类似我们学习过的 HTML 格式的文件,全程 Extensible MarkupLanguage,Java 语言中经常会用 XML 用来做配置管理。

maven项目创建成功后就会生成pom.xml文件,见下面代码:

<?xml version="1.0" encoding="UTF-8"?>  <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/xsd/maven-4.0.0.xsd">   <!--上面的内容完全不用管,使用自动生成的就行,是用于一些校验规则指定的-->      <!--这里指定的是POM的版本,也不需要动-->   <modelVersion>4.0.0</modelVersion>    <!--这里是项目的描述信息,是新建项目时我们填入的内容-->   <groupId>com.wang</groupId>   <artifactId>java_chatroom</artifactId>   <version>1.0-SNAPSHOT</version>   <packaging>war</packaging>      <!--一般把我们需要的内容附加在这下面-->      <!--这个标签中指定所有的依赖项-->  <properties>     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>     <maven.compiler.source>1.7</maven.compiler.source>     <maven.compiler.target>1.7</maven.compiler.target>   </properties>    <!--一般我们把构建相关的配置放这里-->    <build>     <finalName>java_chatroom</finalName>     <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->          <!--使用各种插件-->       <plugins>         <plugin>           <artifactId>maven-clean-plugin</artifactId>           <version>3.1.0</version>         </plugin>                </plugins>     </pluginManagement>   </build>    </project> 

1)依赖

下面三个字段相当于确定一个产品,使用第三方依赖也是依赖下面三个字段

<groupId>bit</groupId>//组织名,规范是组织名伪代码所在包的根路径 <artifactId>com</artifactId>//产品名,也就是项目名 <version>1.0-SNAPSHOT</version>//版本 

我们所添加的任意一款依赖,都是由这三部分组成,如下图的MySQL:

Maven的配置及使用

2)插件

maven 同时还提供了开放的插件开发功能,可以提供给大牛们进行构建过程中方便功能的开发,maven最基本的编译插件如下图所示:

Maven的配置及使用

四、maven的生命周期

maven 把各个阶段都做了各自的映射。主要有以下阶段: clean 清理阶段、 compile 编译阶段、test 测试阶段、 package打包阶段、 deploy 部署阶段

我们在idea中最右边一列点击Maven Projects—->Lifecycle,就可以看到整个maven项目的所有生命周期
Maven的配置及使用

  • clean:将target目录删除掉

  • compile: 编译命令—->编译src/main/java和 src/main/resourcrs

  • package:在target里打jar包、war包(web项目)

  • install:将package打的jar包安装到自己配置的本地仓库中

  • deploy:发布产品,将打包好的产品发布到公司的仓库中(一般是公司配置的maven私服/仓库),其他公司的项目组就可以使用

这些命令都是有优先级的,由上向下依次优先级增大,也就意味着执行下面的命令必须先执行上面的命令。
Maven的配置及使用

本文转自互联网,侵权联系删除Maven的配置及使用

赞(0) 打赏
部分文章转自网络,侵权联系删除b2bchain区块链学习技术社区 » Maven的配置及使用
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

b2b链

联系我们联系我们