Maven详解第1章

本文详细介绍了Maven的作用、Windows和Linux安装配置,以及如何使用Maven进行项目构建、Pom.xml文件管理、IDEA操作和热部署。涉及本地仓库、远程仓库和中央仓库的概念,以及settings.xml文件的配置和关键标签解析。
摘要由CSDN通过智能技术生成

1.1 Maven的作用和定义

1.1.2 Maven的作用

  1. Maven的最大作用就是 ,构建项目。
  2. Maven的好处,可以为项目的构建过程提供很大的便利。
  3. 本地仓库:开发人员个人计算机上的Maven仓库。
  4. 远程仓库:网络上的仓库。
  5. 中央仓库:Maven官方提供的仓库大全。
  6. 私服:局域网搭建的Maven仓库,为公司内的开发人员公用。
  7. 其他公共库:一些知名公司将收集的依赖构建而成的仓库,并将仓库地址发布到网络中供其他用户使用,就可以实现Jar包的引入。

1.2 Maven的安装和配置

1.1.2 Maven在Windows上的安装和配置

  1. 第一步:下载Maven
    访问Maven的 官网,下载apache-maven-3.6.1-bin.zip。
  2. 第二步:安装Maven
    安装Maven非常简单,直接解压apache-maven-3.6.1-bin.zip即可完成Maven安装。
  3. 第三步:配置环境变量
    安装完Maven之后,还需要配置Maven的环境变量。与设置JDK环境变量的方法相同,配置Maven的环境变量需要添加配置两个值,一个是"MAVEN_HOME" ,其值指向Maven的安装目录;另一个是path,在path中添加;%MAVEN_HOME%\bin。
  4. 第四步:测试环境变量是否正确
    打开CMD窗口,输入mvn - version 。如果能看到Maven的版本信息,则代表环境变量配置正确。

1.1.2 Maven在Linux上的安装和配置

  1. 第一步:下载Maven
    与Windows版的下载地址相同,只不过这里要下载的是apache-maven-3.6.1-bin.tar.gz。将下载的文件上传到/usr/local目录下。
  2. 第二步:解压tar文件安装
    (1)/usr/local目录下创建maven文件夹。
    cd /usr/local
    mkdir maven
    (2)解压tar文件
    tar - zxvf apache-maven-3.6.1-bin.tar.gz -C /usr/local/maven
    (3)配置环境变量
    vim /etc/profile
    在打开的文件中添加如下内容.
    export MAVEN_HOME=/usr/local/maven/apache-maven-3.6.1
    export PATH= M A V E N H O M E / b i n : {MAVEN_HOME}/bin: MAVENHOME/bin:PATH
    保存退出vim后,还须使新增的环境变量生效
    source /etc/profile
    (4)验证Maven是否安装成功
    输入如下命令:
    mvn - version
    如果能显示Maven的版本信息,则代表Maven已经安装成功。

1.3 Maven的常用操作

1.3.1 使用Maven进行项目构建

  1. 第一步:创建空project
    打开IDEA,单击 “File-New-Project”,打开创建Project的窗口,此次选择创建一个空Project,然后选左边栏"Empty Project"。
    单击"Next",设置项目的名称和保存位置,此处设置Project的名称为"mavenproject",单击"Finish",完成Project的创建。
  2. 第二步:创建Maven Module
    单击"Finish"之后,会弹出Project Structure窗口,可在此创建Module。
    单击窗口上方的加号,选择"New Module" ,打开Module类型的选择窗口。
    在左侧菜单中选择"Maven" ,右侧的菜单中勾选上方的"Create from archetype" 选项,在下方选择" maven-archetype-webapp",单击"Next",打开设置Maven项目坐标的窗口。
    单击"Next",进入Maven项目的详细设置窗口。

这里配置的内容有4项:
(1)Maven home directory: Maven安装的路径。
 (2) User settings file:	Maven的settings.xml文件的位置
settings.xml文件为位于Maven安装路径中的conf文件夹下,是Maven的核心配置文件,此文件可以配置Maven的很多内容:
- 本地仓库地址的配置。打开settings.xml文件,找到名为"<localRepository>"的标签,默认情况下settings.xml文件会将<localRepository>标签的配置作为注释,放开注释,在<localRepository>标签中配置的路径即为Maven本地仓库的地址,代码如示例1所示
  示例1
<localRepository>D:/software/resp-test</localRepository>
-配置公共仓库。在settings.xml文件中可以配置远程仓库,找到<mirrors>标签,默认情况下,<mirrors>标签中的内容是被注释的,这种情况即表示项目中的依赖从Maven中央仓库下载。从中央仓库下载依赖速度比较慢,可以采用阿里巴巴的公共仓库。配置的方法即在<mirrors>标签中添加一段代码,如示例2所示。
  示例2
<mirror>
	<id>nexus-aliyun</id>
	<mirrorOf>*</mirrorOf>
	<name>Nexus aliyun</name>
	<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
 (3)Local repository: Maven本地仓库的路径。
 (4)Properties:Maven项目的属性。

1.3.2 Pom文件详解

Maven项目中的Pom.xml文件可以对依赖进行管理。接下来看一下如何在pom.xml文件中管理依赖。
pom.xml文件中主要包含以下标签:
<groupId>:项目的全球唯一标识符,与Java包名的命名方式相同。
<artifactId>:本项目的唯一ID,一般为项目名称。
<version>:项目的版本号,比如 1.0.0-SNAPSHOT,其中 1.0.0表示版本的编号,SNAPSHOT代表当前版本是快照版本,如果是最终发布版本,则应改为 1.0.0-REKEASE。
<parent>:表示父依赖,当前项目可以继承父依赖中配置的依赖和属性,类似Java中的继承。
指定父依赖时,需要指定父依赖的grouId、artifactId、version和relativePath,如示例3所示。
示例3
<parent>
	<artifactId>xxx</artifactId>
	<grouId>xxx</grouId>
	<version>xxx</version>
	<!-- 父项目的 pom.xml文件的相对路径。-->
	<relativePath>xxx</relativePath>
</parent>
<packagin>:项目的打包方式,一般为jar或者war。
<name>:项目的名称,Maven生成的文档使用。
<url>:项目主页的URL,Maven生成的文档使用。
<description>:项目的描述,Maven生成的文档使用。
<dependencies>:定义此项目的依赖关系集。
<dependency>:定义引入的某个依赖。
 dependencydependency一般和多个子标签配合,完成依赖的引入,如示例4所示。
 示例4
<dependency>
<groupId>com. winner. trade</groupId>
<artifactId>trade-test</arti factId>
<version>1.0.0- SNAPSHOT</ version>
<!-- maven 认为,程序对外部的依赖会随着程序的所处阶段和应用场景而变化,所以maven
中的依赖关系有作用域(scope)的限制。-->
<!-- scope包含如下的取值: compile (编译范围)、provided (已提供范围)、 runtime
(运行时范围)、test ( 测试范围)、system (系统范围) -- >
<scope> test</ scope>
<!--设置依赖是否可选,默认为false,即子项目默认都继承;若为true,则子项目必需显式
的引入,与dependencyManagement里定义的依赖类似
-- >
<optional> false</ optional>
<!--屏蔽依赖关系。比如项目中使用的libA依赖某个库的1.0版,libB依赖某个库的2.0
版,现在想统一-使用2.0版,就应该屏蔽掉对1.0版的依赖-->
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<arti factId>slf4j-api</artifactId>
</exclusion>
</exclusions>
</dependency>
<properties>:定义一些常量,可以在pom文件的其他地方引用,如示例5所示。
示例5
<properties>
		<file.encoding>UTF-8</file.encoding>
</properties>	
示例5中定义了常量file.encoding,在pom中的其他地方可以通过${file.encoding}进行引用
<build>:描述如何编译和打包项目。
具体的编译和打包工作是通过build标签中的plugin完成的。plugin不是必需的。
<build>标签的具体使用方式如示例6所示。
示例6
<bulid>
	<finalName>mavenmodule</finalName>
	<pluginMangement>
		<plugins>
			<plugin>
				<artifactId>maven-clean-plugin</artifactId>
				<vension>3.1.0</vension>
			</plugin>
		</plugins>
	</pluginMangement>
</bulid>

1.3.3 IDEA中的常用Maven操作

Maven操作有9个,分别如下:
➢clean:清除项目编译后的资源文件。
➢validate:验证工程是否正确,所有需要的资源是否可用,可以验证pom.xml文件的正确性。
➢compile:编译项目,测试代码的正确性。
➢test: 执行项目中的测试用例。
➢package:将项目打包。
➢verify:运行任何检查,验证包是否有效且达到质量标准。
➢install:将项目打包进本地仓库。
➢site:生成项目的网页形式的文档。
➢deploy:将项目包发布到远程仓库。

1.3.4 热部署

如何开启热部署呢?总共分4步。
第一步:按Ctrl+shift+alt+/快捷键,选择” 1.Registry...,在打开的窗口中勾选“compiler autoallow.when.app.running"选项。
第二步:为Module添加依赖。
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-devtools</artifactId>
	<optional>true</optional>
</dependency>
第三步:在Module的pom文件中添加如下配置。
<plugins>
	<plugin>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-maven-plugin</artifactId>
		<configuration>
			<fork>true</fork>
		</configuration>
		<dependencies>
			<dependency>
				<groupId>org.springframework</ groupId>
				<artifactId>springloaded</artifactId>
				<version>1.2.5.RELEASE<version>
			</dependency>
		</dependencies>
	</plugin>
</plugins>
第四步:在IDEA中,单击"File-Settings", 在打开的窗口中单击'Build, Excution, Deployment-
compiler",在弹出的窗口中勾选“build project automatically"选项。				
  • 8
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值