基于IDEA的Maven(properties属性配置)

property :财产)properties:它的复数。

同样也是基于上篇博客进行学习。(具体的全部项目代码和结构可以去查看上篇...)

java 复制代码
<properties>
        <!--当前jdk版本 , 这一步可以完全省略-->
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
        
        <!--编码可以保留下来-->
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        
    </properties>

目录

一、介绍与分析

[(1) 标签:](#(1) 标签:)

[1、这个标签里面设置的当前 JDK 版本完全可以省略去掉。](#1、这个标签里面设置的当前 JDK 版本完全可以省略去掉。)

2、编码的设置可以保留。

[3、设置依赖的版本 (重点)](#3、设置依赖的版本 (重点))

[1、举个例子:上篇博客设置的依赖(servlet 3.1.0 版本)](#1、举个例子:上篇博客设置的依赖(servlet 3.1.0 版本))

[2、 我们进行一个写法的修改。](#2、 我们进行一个写法的修改。)

3、这样做的好处。


一、介绍与分析

(1) 标签:<properties>

可以理解成一个属性或者是一个变量。

1、这个标签里面设置的当前 JDK版本完全可以省略去掉。

(因为平常在配置 Maven 的时候就已经绑定了 JDK 的版本了,而且在运行时环境变量也是要提前配置好 JDK的版本)

2、编码的设置可以保留。
3、设置依赖的版本 (重点)

(这是通常在标签:<properties> 中写的东西 )

1、举个例子:上篇博客设置的依赖(servlet 3.1.0 版本)
java 复制代码
<dependencies>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.1.0</version>
            <!--<scope>provided</scope>  这里先不管,注释掉,以后学-->
        </dependency>
    </dependencies>
2、 我们进行一个写法的修改。

第1步

我们可以在标签:<properties>中声明 servlet 3.1.0 依赖引用的版本。

常用的声明方式 <javax.servlet.version> ...... </javax.servlet.version>

(这是通常命名的一种方式,用它 " groupId "+ version 。)


第2步

然后再在标签:<dependency> 中的标签 **<version>**中引入变量,把javax.servlet.version 看成一个变量。具体修改后代码如下:

java 复制代码
<properties>
        <!--当前jdk版本 , 这一步可以完全省略-->
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>

        <!--编码可以保留下来-->
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

        <javax.servlet.version>3.1.0</javax.servlet.version>

    </properties>
java 复制代码
<dependencies>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            
            <!--引入变量-->
            <version>${javax.servlet.version}</version>
            
            <!--<scope>provided</scope>  这里先不管,注释掉,以后学-->
        </dependency>
    </dependencies>
3、这样做的好处。

首先是可以统一管理版本。因为如果以后要将 servlet 版本换了之后,就统一找到标签:<properties> 在它里面修改一下就好了。因为以后在开发项目时,它的标签:<dependencies> 里面的依赖是非常的多的,不方便寻找。

还有一种情况是假如同一个 " groupId " 下面有很多种个不同的 " artifactId " ,那么现在版本全部要升级,一个个改就会很麻烦。但是采用上面把版本的声明统一写在标签:<properties> ,就方便很多了。

相关推荐
圆山猫5 小时前
[Virtualization](四):Linux KVM/RISC-V 的 vCPU 运行路径
java·linux·risc-v
城管不管6 小时前
ReAct、Plan-and-Execute、Reflection 三大智能 Agent 范式核心区别
java·人工智能·算法·spring·ai·动态规划
IT小白杨6 小时前
从环境制备到自动化工作流:多账号运营的工程化架构拆解
java·经验分享·自动化·安全架构·指纹浏览器
豆瓣鸡6 小时前
算法日记 - Day3
java·开发语言·算法
萧瑟余晖7 小时前
Java深入解析篇九之NIO详解
java·网络·nio
The Chosen One9857 小时前
高进度算法模板速记(待完善)
java·前端·算法
极光代码工作室9 小时前
基于SpringBoot的课程预约系统
java·springboot·web开发·后端开发
Leighteen10 小时前
`try-finally` 里的 `return`:为什么 `finally` 会悄悄改掉返回值、吞掉异常
java·开发语言
名字还没想好☜10 小时前
Go 的 time.After 在 select 循环里内存泄漏:定时器堆积原理与 timer.Reset 正确姿势
java·数据库·golang·go·goroutine
圆山猫11 小时前
[Virtualization](三):RISC-V H-extension 与 Guest 执行模式
android·java·risc-v