【Spring Boot 初识丨二】maven

上一篇讲了使用spirngboot 自带的构建器构建项目
本篇来讲一讲如何从零开始构建一个maven项目
Spring Boot 初识:
【Spring Boot 初识丨一】入门实战
【Spring Boot 初识丨二】maven
【Spring Boot 初识丨三】starter
【Spring Boot 初识丨四】主应用类

前提:
jdk 推荐 java17及以上
maven 推荐 Maven 3.5+

一、 安装maven

  Maven的安装需要依赖JDK的安装,所以必须先安装完成JDK且配置好JDK环境变量后在进行Maven的安装。

1. 下载

  官网下载:
    最新版:
在这里插入图片描述
    历史版本:
在这里插入图片描述
点击上面的 ‘Maven 3 archives’在这个里边找自己需要的版本
在这里插入图片描述
下载完了之后解压缩 然后将Maven的bin目录添加到环境变量中。
输入mvn -v命令,如果能够输出Maven的版本信息如下图,则说明安装成功。
在这里插入图片描述

2. settings.xml

  安装完毕之后 配置settings.xml

  • 设置Maven本地仓库路径:在settings.xml文件中修改localRepository节点 如下图:
    在这里插入图片描述

  • 添加国内镜像源:在settings.xml文件中修改mirrors节点 如下图:
    在这里插入图片描述
      上文添加的是阿里云中央仓库的镜像 可以根据自己的需要自行加镜像

  • 修改Maven默认的JDK版本:在settings.xml文件中profiles节点之间添加jdk版本 如下图:
    在这里插入图片描述


二、 构建maven项目

2.1 创建项目

  上述的准备工作做完了之后开始创建 maven 项目 。
点击 ‘create new project’ 选择maven项目 然后一路next 起个项目名点击完成即可。
在这里插入图片描述

2.2 配置maven

打开项目之后配置maven
配置maven(File | Settings | Build, Execution, Deployment | Build Tools | Maven )
配置 maven路径 使用的配置文件还有本地仓库的位置 这三项 如下图:
在这里插入图片描述

2.3 pom.xml

在打开的项目下面创建一个简单的子目录结构 如下:

└── src
   └── main
     └── java
       └── demo

在项目根目录下的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">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.1.0</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>org.example</groupId>
    <artifactId>mavenDemo</artifactId>
    <packaging>jar</packaging>
    <version>1.0-SNAPSHOT</version>
    <name>mavenDemo</name>
    <description>Maven Demo project for Spring Boot</description>
    <properties>
        <java.version>8</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
        	<!--  SpringBoot 自带的打包插件-->
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>

<!--  MAVEN 打包-->
<!--            <plugin>-->
<!--                <groupId>org.apache.maven.plugins</groupId>-->
<!--                <artifactId>maven-shade-plugin</artifactId>-->
<!--                <version>3.2.4</version>-->
<!--                <executions>-->
<!--                    <execution>-->
<!--                        <phase>package</phase>-->
<!--                        <goals>-->
<!--                            <goal>shade</goal>-->
<!--                        </goals>-->
<!--                        <configuration>-->
<!--                            <transformers>-->
<!--                                <transformer-->
<!--                                        implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">-->
<!--                                    <mainClass>hello.HelloWorld</mainClass>-->
<!--                                </transformer>-->
<!--                            </transformers>-->
<!--                        </configuration>-->
<!--                    </execution>-->
<!--                </executions>-->
<!--            </plugin>-->
    </build>

</project>

modelVersion:POM 模型版本(始终为 4.0.0)。

groupId: 项目所属的组或组织。通常表现为倒置域名。

artifactId: 项目名称(例如,其 JAR 或 WAR 文件的名称)。

version : 正在构建的项目的版本。

packaging : 项目应该如何打包。JAR 文件打包默认为“jar”。WAR文件打包使用“war”。

description :项目描述 可写可不写

java.version : 项目的jdk版本

SpringBoot 自带的打包插件

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

继承 Starter Parent POM
将项目配置为继承自spring-boot-starter-parent,parent

<parent>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-parent</artifactId>
	<version>3.1.0-SNAPSHOT</version>
</parent>

不从Parent 继承使用Spring Boot POM
可以通过使用import范围依赖来保持依赖管理(但不是插件管理)的好处

<dependencyManagement>
    <dependencies>
        <dependency>
            <!-- Import dependency management from Spring Boot -->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>3.1.0-SNAPSHOT</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

自动重启
重新编译应用程序时检测到更改 Spring Boot应用可以自动重启

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <optional>true</optional>
    </dependency>
</dependencies>

在这里插入图片描述

  如果喜欢的话,欢迎 🤞关注 👍点赞 💬评论 🤝收藏  🙌一起讨论
  你的评价就是我✍️创作的动力!					  💞💞💞
  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

家有娇妻张兔兔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值