Maven入门,安装与配置

1.Maven介绍

  • Maven是项目管理工具,对软件项目提供构建与依赖管理。
  • Maven是Apache下的Java开源项目。
  • Maven为Java项目提供了统一的管理方式,已成为业界标准。

2.Maven核心特征

  • 项目设置遵循统一的规则,保证不同开发环境的兼容性
  • 强大的依赖管理,项目依赖组件自动下载、自动更新
  • 可扩展的插件机制,使用简单,功能丰富

3.Maven的安装与配置

前提:要预先安装jdk,配置java运行环境

3.1.下载Maven

官网下载地址
在这里插入图片描述
windows下载这个apache-maven-x.x.x-bin.zip

3.2.配置Maven

将下载的Maven的zip文件解压到自己指定的目录。
然后在系统变量中新建一个

变量名:MAVEN_HOME
变量名:D:\Program Files\Maven\apache-maven-3.6.3 (具体的值根据你解压的目录为准)

在系统变量的Path变量中新增路径

变量名:%MAVEN_HOME%\bin (固定写法)

3.3.验证安装是否成功

运行cmd
输入:mvn -v
如果返回Maven版本号等信息则配置成功。(我自己之前装的是3.6.2)
在这里插入图片描述

4.Maven的坐标

  • GroupId:机构或者团体的英文,采用"逆向域名"形式书写
  • ArtifactId:项目名称,说明其用途,例如:cms、oa…
  • Version:版本号,一般采用"版本+单词"形式,例如:1.0.0.RELEASE

5.Maven项目标准结构

目录用途
${basedir}根目录,用于保存pom.xml
${basedir}/src/main/javaJava源代码目录
${basedir}/src/main/resources资源目录,保存配置文件、静态图片等
${basedir}/src/test/java测试类的源代码
${basedir}/src/test/resources测试时需要使用的资源文件
${basedir}/target项目输出的目录,用于存储jar、war文件
${basedir}/target/classes字节码(.class)的编译输出目录
${basedir}/pom.xml项目(Project)对象(Object)模型(Model)文件

6.Maven依赖管理

  • Maven利用ependependdency>ency(依赖)自动下载、管理第三方Jar
  • 在pom.xml文件中配置项目依赖的第三方组件
  • maven自动将依赖从远程仓库下载至本地仓库,并在工程中引用

一个标准的依赖配置,以jdbc为例子

	<!--依赖根目录,内可添加多个依赖-->
	<dependencies>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.48</version>
        </dependency>
    </dependencies>

依赖导入查到网站:
mvnrepository.com
search.maven.org

6.Maven本地仓库与中央仓库

在这里插入图片描述

6.1.配置中央仓库私服

方法一:编辑项目pom.xml文件(只对该项目生效)

文件内增加以下配置(阿里云仓库)

 	<repositories>
        <repository>
            <id>aliyun</id>
            <name>aliyun</name>
            <url>https://maven.aliyun.com/repository/public</url>
        </repository>
    </repositories>

方法二:编辑本地maven的setting.xml文件(对所有使用该maven的项目生效

编辑Maven解压目录中 apache-maven-x.x.x\conf\settings.xml 的文件
在<mirrors></mirrors>标签中增加以下配置(阿里云仓库)

	<mirror>
		<id>aliyun</id>
  		<mirrorOf>central</mirrorOf>
  		<name>aliyun</name>
  		<url>https://maven.aliyun.com/repository/public</url>
	</mirror>

6.2.配置本地仓库地址

编辑Maven解压目录中 apache-maven-x.x.x\conf\settings.xml 的文件
在文件中增加以下配置

<localRepository><!--你将要设置的文件目录--></localRepository>

7.项目打包

  • Maven可将Java项目打包为jar、war包
  • Maven项目打包是通过Plugins(插件)技术实现
  • Maven输出Jar包插件:maven-assembly-plugin

7.1.Jar文件打包

在pom.xml中添加以下内容

	<build>
        <!--配置插件-->
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-assembly-plugin</artifactId>
                <version>2.5.5</version>
                <configuration>
                    <archive>
                        <manifest>
                        	<!--配置入口类-->
                            <mainClass>xxx.xxx.xxx<!--自己修改--></mainClass>
                        </manifest>
                    </archive>
                    <descriptorRefs>
                        <!--all in one,在打包时会将所有引用的jar合并到输出的jar文件中-->
                        <descriptorRef>jar-with-dependencies</descriptorRef>
                    </descriptorRefs>
                </configuration>
            </plugin>
        </plugins>
    </build>

如果是idea,选择右侧的
在这里插入图片描述
双击进行打包
在这里插入图片描述
在下方日志里出现Finished at:XXXXXX表示已经完成然后我们在项目的target目录中出现打包完成的文件
在这里插入图片描述
第一个jar:中只有自己写的代码的字节码文件没有加载依赖
第二个jar:包括自己写的字节码文件和依赖
在这里插入图片描述

7.2.War文件打包

在pom.xml中添加以下内容

	<build>
		<!--设置打包后的文件名-->
		<finalName>MavenWeb</finalName>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>3.2.3</version>
            </plugin>
        </plugins>
    </build>

和设置打包输出文件格式

	<packaging>war</packaging>

8.Maven常用命令

需要将Maven添加到运行环境变量中

命令用途
mvn archetype:generate创建Maven工程结构
mvn compile编译源代码
mvn test执行测试用例
mvn clean清除产生的项目
mvn package项目打包
mvn install安装至本地仓库
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值