SSM框架组建之环境依赖配置

从 SSM 框架的项目目录开始

        接 SSM 框架组建第一步,maven 工具加载完毕后开始。
        maven - webapp 项目创建完成后,会自动创建如下整体目录结构。

  • main 文件夹: 顾名思义就是项目的起始,所有跟项目有关的文件都要放到这个文件夹中。这样做的好处就是,在项目完成后利用 maven 打包工具打包后,打包出来的项目在部署到服务器上时,将会以同样的目录方式进行呈现,否则容易出现路径报错问题(无论何时,路径报错都是特别伤脑的“小问题”,一个出错,后面就会牵连出一连串的报错,想必对此都深有体会 o(*≧▽≦)ツ┏━┓)
  • webapp 文件夹: 没啥好说,跟 web 有关的文件都放在这个文件夹中。(当然也是为了方便管理)
  • pom.xml : SSM 项目的头号依赖配置文件,凡与项目有关的依赖都要写在这个 XML 文件中,通过 maven 进行统一管理。(项目依赖是一个令人又爱又恨的玩意,由于项目很多部分是相通的,故此完整配置了一次 pom.xml 之后,接下去建项目,就是基础的复制粘贴。【懒人自嘲,不要学我。】 但有个问题,当新的依赖加入时,需要对已有依赖进行检查,防止出现依赖不匹配的情况,依赖不匹配,在代码书写前期是无法发现的,但是项目一旦开始运行,就会报各种稀奇古怪的错误 【 get 一个点,当创建项目时,一旦遇到在网上搜不到解决方案的问题时,先检查一下获取的依赖是否与原有依赖相冲突。】
  • web.xml: 没错,它是用来对 web 端进行相关配置的。配置出问题,影响范围在 web 页面及前后端数据传输之间。
    在这里插入图片描述
            上述目录对一个完整的 SSM 项目来说还少了四大关键文件夹: main/java(JavaBean 自定义库类存放文件夹) ; main/resources (SSM 项目关联访问配置);test/java(关联 main/java 对应测试类存放文件夹);test/resources(关联main/resources)
            在 src 文件夹上右键,选择 new → Directory,出现New Directory 填写框,(使用IDEA的好处,自动关联显示了 Maven Source Directories 如下图所示。 同时自动对main/java-test/java 和 main/resources - test/resources 做了关联) 按住 “Ctrl”键 把四个目录全部选上,此时SSM项目基本框架目录创建完毕。
    在这里插入图片描述

添加 Maven 依赖( pom.xml 文件配置)

        Maven的依赖有很多,这个依赖配置完后,如果项目需要,可以不断往里面添加新的依赖。此处是我的项目依赖,也是比较常用的 java_web 项目依赖。

1. 修改 maven 依赖的 jdk

        此处为 maven 依赖的 jdk 版本,(虽然目前我没发现不改会出啥问题,别的教程上也没有强制要改,但是为了防止意外,我将其改为我电脑的 jdk 13 环境)

    <!--  maven 依赖的 jdk 版本  -->
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java-version>13</java-version>
        <maven.compiler.source>13</maven.compiler.source>
        <maven.compiler.target>13</maven.compiler.target>
    </properties>
    

修改如下图所示,所有的数字对应项目所用的 jdk 版本号:
在这里插入图片描述

2. 创建项目相关依赖

        所有的项目依赖写在 <dependencies></dependencies> 中。注意!!在 XML 文件中,必须以<?xml version="1.0" encoding="UTF-8"?>作为开头,开头不得有注释等,不然会报错
        测试(test)所需依赖:

        <!-- junit (单元)测试-->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <!--
                将默认依赖改为使用4.11版本
                3.0 版本的junit默认使用编程方式
                4.0版本使用注解方式运行junit
             -->
            <version>4.11</version>
            <scope>test</scope>
        </dependency>
        <!--切面编程 -->
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjweaver</artifactId>
            <version>1.8.5</version>
        </dependency>
        

        日志文件依赖:

        <!-- 1、日志 java日志: slf4j, log4j, logback, common-logging
            slf4j :是规范/接口 -针对接口
            日志实现:log4j, logback, common-logging
            使用(项目常用组合):slf4j + logback
         -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.12</version>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-core</artifactId>
            <version>1.1.1</version>
        </dependency>
        <!-- logback-classic实现slf4j接口并整合 -->
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>1.1.1</version>
            <exclusions>
                <exclusion>
                    <artifactId>slf4j-api</artifactId>
                    <groupId>org.slf4j</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        

        数据库连接依赖(我用的数据库是 mysql 8.0.23 故此在配置数据库驱动时,<version></version> 中填写的是 8.0.23 ):

        <!-- 2、数据库相关部分依赖 -->
        <!-- 数据库驱动 -->
        <dependency>
            <groupId>mysql</groupId>  
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.23</version>  
            <!-- 注意版本问题,如果驱动版本与mysql不匹配,会报错,
            这里的版本 version 需要与服务器安装的 mysql 数据库版本一致。
            不知道本机 mysql 版本的,可使用 'cmd' 打开命令行,通过 mysql -u root -p 打开 mysql 可知。 -->
			<!-- 报错语句:Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: 
			Could not create connection to database server. -->
            <scope>runtime</scope>
            <!-- maven工作范围 -->
            <!-- 定义生命周期为runtime,只有在应用时启动 -->
        </dependency>
        <!-- 数据库链接池 -->
        <dependency>
            <groupId>c3p0</groupId>
            <artifactId>c3p0</artifactId>
            <version>0.9.1.2</version>
        </dependency>
        

        Mybatis管理依赖:

        <!-- 3、DAO框架:MyBatis自身依赖 -->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.3.0</version>
        </dependency>
        <!-- MyBatis自身实现的Spring依赖整合 -->
        <!-- spring 中并没有提供对MyBatis 的依赖整合,这个整合是基于 MyBatis 的依赖整合 -->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis-spring</artifactId>
            <version>1.2.3</version>
        </dependency>
        

        web 端 servlet jsp 依赖:

        <!-- 4、Servlet web 相关依赖 -->
        <!-- jsp常用标签 -->
        <dependency>
            <groupId>taglibs</groupId>
            <artifactId>standard</artifactId>
            <version>1.1.2</version>
        </dependency>
        <!-- js默认标签库jstl -->
        <dependency>
            <groupId>jstl</groupId>
            <artifactId>jstl</artifactId>
            <version>1.2</version>
        </dependency>
        <!-- springMVC 默认的json转换 -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.5.4</version>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.1</version>
            <scope>provided</scope>
        </dependency>
        

        框架核心—— spring 依赖 :

        <!-- 5、spring依赖 -->
        <!-- 1)spring 核心依赖 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>
        <!-- 包扫描依赖 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>
        <!-- 2)spring dao层依赖 -->
        <!-- jdbc提供的数据库的数据管理器 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>
        <!-- spring 事务相关依赖 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-tx</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>
        <!-- 3)spring web相关依赖 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>
        <!-- 4)spring test相关依赖 -->
        <!-- 方便单元测试和集成测试 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>

        其他较为常见的依赖 :

  1. 在 SSM 项目中,我们常用注解的方式获取依赖的注入,但是有的 jdk 中并不包含“注解自动导入包” javax.annotation.Resource 。以下依赖用来解决 @Resource 等注解错误,无法导入 javax.annotation.Resource 包的问题。
       <!-- Javax Annotation -->
        <dependency>
            <groupId>javax.annotation</groupId>
            <artifactId>javax.annotation-api</artifactId>
            <version>1.3.1</version>
        </dependency>
        
  1. 在 java_web 项目中,常用的 web 构建方式中, spring 中的 视图渲染 viewResolver 默认是以 jsp 作为前端的渲染。jsp渲染好处是渲染速度较快,但坏处是,当团队开发的项目时候,由于 jsp 中内嵌大量 java 代码,使得开发工作无法很好的进行前后端分离。因此,如果想要使用HTML作为前端渲染,需要配置 HTML 渲染依赖。(如果选择以 HTML 作为前端渲染,则前面有关 jsp 的标签依赖可以不进行配置。)
        <!-- html viewResolver support -->
                <!-- start apache -->
                <dependency>
                    <groupId>commons-logging</groupId>
                    <artifactId>commons-logging</artifactId>
                    <version>1.1.3</version>
                </dependency>
                <dependency>
                    <groupId>commons-collections</groupId>
                    <artifactId>commons-collections</artifactId>
                    <version>3.2.1</version>
                </dependency>
                <dependency>
                    <groupId>commons-fileupload</groupId>
                    <artifactId>commons-fileupload</artifactId>
                    <version>1.3</version>
                </dependency>
                <!-- end apache -->
        <!-- 注意!! org.springframework.ui.freemarker.FreeMarkerConfigurationFactory类
            在 spring-context-support 中,要配置 HTML 的 viewResolver 必须写
         -->
                <dependency>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring-context-support</artifactId>
                    <version>4.1.6.RELEASE</version>
                </dependency>
                <dependency>
                    <groupId>org.freemarker</groupId>
                    <artifactId>freemarker</artifactId>
                    <version>2.3.22</version>
                </dependency>

致此,pom.xml 配置完毕。附上我的完整 pom.xml 配置

main/resources 文件夹相关路径(框架配置)

  1. 配置 mysql 数据库连接配置文件 : jdbc.properties 。
    在main/rosources 文件夹上右键 new → File , 输入 jdbc.properties ,在新建出来的文件中写上如下代码:
# mysql 调用驱动
jdbc.driver = com.mysql.jdbc.Driver
# dream_db 为数据库名字,mysql默认端口为 3306 如果在安装mysql时修改了端口,则改为对应端口,否则会报错,连接不上数据库
jdbcUrl=jdbc:mysql://localhost:3306/dream_db?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
# mysql 登录用户名,我用的是超级管理员 root
jdbc.username = root
# mysql 登录密码,为方便进入,我将 mysql - root 的登录密码改为无。
jdbc.password=

#定义初始连接数
initialSize=0
#定义最大连接数
maxActive=20
#定义最大空闲
maxIdle=20
#定义最小空闲
minIdle=1
#定义最长等待时间
maxWait=60000

附上 mysql 修改登录密码小贴士:(启动命令控制行“管理员模式”)

  • 连接mysql服务 :net start mysql
  • 启动mysql: mysql -u root -p (+初始化密码)
  • 更改密码指令:ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘新密码’;
  1. 配置 log 日志文件 :logback.xml
    logback作为 log4j 日志的配置文件,将程序中的日志打印到控制台。可以通过配置,设置日志文件的输出级别,格式,输出路径等,我这附上官方给出的最简单的logback.xml配置。
    在日志的输出上
    附上logback配置官方详解地址:https://logback.qos.ch/manual/configuration.html
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="true">
    <!--最简logback配置-->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <!-- encoders are  by default assigned the type
             ch.qos.logback.classic.encoder.PatternLayoutEncoder -->
        <!-- 打印方式:时间,线程,基本logback格式 -->
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>

    <!--打印级别-->
    <root level="debug">
        <appender-ref ref="STDOUT" />
    </root>
</configuration>

  1. 配置 MyBatis 核心配置文件 :mybatis-config.xml(包括数据库下划线命名法与java驼峰命名法的自动转换,别名转换,主键自增忽略等)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">

<configuration>
    <!-- 配置全局属性 -->
    <settings>
        <!-- 使用 jdbc 的 GeneratedKeys 获取数据库自增主键值,
        主键值不进行传入打开时,不用关注底层API,自动赋值id 默认 value:false -->
        <setting name="useGeneratedKeys" value="true" />
        <!-- 使用列别名替换列名 -->
        <setting name="useColumnLabel" value="true" />
        <!-- 开启驼峰命名转换 -->
        <setting name="mapUnderscoreToCamelCase" value="true" />
    </settings>
</configuration>

  1. webapp/WEB-INF/web.xml 配置
    web.xml 为 Web 容器的配置文件,用来初始化配置信息,主要定义了:
  • Web 应用的名字、描述(display-name 和 description 标签);
  • 应用范围的初始化参数(context-param标签);
  • 过滤器配置(filter 标签);
  • 监听器配置 (listener 标签);
  • servlet 配置(servlet 标签,如前端控制器和验证码);
  • 进入首页界面(welcome-file-list 标签,如 index.jsp 页面);
  • session失效时间(session-config 标签);
  • 错误页面配置(error-page 标签,如 404、500 错误页面等)。
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
                            http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0"
         metadata-complete="true">
    <!-- 修改servlet版本 -->
    <!-- 用maven默认创建的web.xml无法使用,需要换成Tomcat样例中的web.xml  -->

    <!-- 配置 DispatcherServlet 前端控制器 -->
    <servlet>
        <servlet-name>servlet-dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!-- 配置springMVC需要加载的配置文件
            spring-dao.xml, spring-service.xml, spring-web.xml
            MyBatis -> spring -> springMVC
         -->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:spring/spring-*.xml</param-value>
        </init-param>
    </servlet>
    <servlet-mapping>
        <servlet-name>servlet-dispatcher</servlet-name>
        <!-- ’/‘ ->特殊映射 默认匹配所有的请求  -->
        <url-pattern>/</url-pattern>
    </servlet-mapping>

    <!-- 处理POST提交乱码问题 -->
    <filter>
        <filter-name>encoding</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>utf-8</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encoding</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

</web-app>

致此,基本环境依赖配置完毕可以直接复制粘贴使用。

完整 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>

    <groupId>org.example</groupId>
    <artifactId>dreamLoad</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>war</packaging>

    <name>dreamLoad Maven Webapp</name>
    <!-- FIXME change it to the project's website -->
    <url>http://www.example.com</url>

    <!--  maven 依赖的 jdk 版本  -->
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java-version>13</java-version>
        <maven.compiler.source>13</maven.compiler.source>
        <maven.compiler.target>13</maven.compiler.target>
    </properties>

    <dependencies>
        <!-- junit (单元)测试-->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <!--
                将默认依赖改为使用4.11版本
                3.0 版本的junit默认使用编程方式
                4.0版本使用注解方式运行junit
             -->
            <version>4.11</version>
            <scope>test</scope>
        </dependency>
        <!--切面编程 -->
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjweaver</artifactId>
            <version>1.8.5</version>
        </dependency>

        <!-- 补全项目依赖 -->

        <!-- 1、日志 java日志: slf4j, log4j, logback, common-logging
            slf4j :是规范/接口 -针对接口
            日志实现:log4j, logback, common-logging
            使用(项目常用组合):slf4j + logback
         -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.12</version>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-core</artifactId>
            <version>1.1.1</version>
        </dependency>
        <!-- logback-classic实现slf4j接口并整合 -->
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>1.1.1</version>
            <exclusions>
                <exclusion>
                    <artifactId>slf4j-api</artifactId>
                    <groupId>org.slf4j</groupId>
                </exclusion>
            </exclusions>
        </dependency>

        <!-- 2、数据库相关部分依赖 -->
        <!-- 数据库驱动 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.23</version>
            <scope>runtime</scope>
            <!-- maven工作范围 -->
            <!-- 定义生命周期为runtime,只有在应用时启动 -->
        </dependency>
        <!-- 数据库链接池 -->
        <dependency>
            <groupId>c3p0</groupId>
            <artifactId>c3p0</artifactId>
            <version>0.9.1.2</version>
        </dependency>

        <!-- 3、DAO框架:MyBatis自身依赖 -->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.3.0</version>
        </dependency>
        <!-- MyBatis自身实现的Spring依赖整合 -->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis-spring</artifactId>
            <version>1.2.3</version>
        </dependency>

        <!-- 4、Servlet web 相关依赖 -->
        <!-- jsp常用标签 -->
        <dependency>
            <groupId>taglibs</groupId>
            <artifactId>standard</artifactId>
            <version>1.1.2</version>
        </dependency>
        <!-- js默认标签库jstl -->
        <dependency>
            <groupId>jstl</groupId>
            <artifactId>jstl</artifactId>
            <version>1.2</version>
        </dependency>
        <!-- springMVC 默认的json转换 -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.5.4</version>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.1</version>
            <scope>provided</scope>
        </dependency>

        <!-- 5、spring依赖 -->
        <!-- 1)spring 核心依赖 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>
        <!-- 包扫描依赖 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>
        <!-- 2)spring dao层依赖 -->
        <!-- jdbc提供的数据库的数据管理器 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>
        <!-- spring 事务相关依赖 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-tx</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>
        <!-- 3)spring web相关依赖 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>
        <!-- 4)spring test相关依赖 -->
        <!-- 方便单元测试和集成测试 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>

        <!-- Javax Annotation -->
        <dependency>
            <groupId>javax.annotation</groupId>
            <artifactId>javax.annotation-api</artifactId>
            <version>1.3.1</version>
        </dependency>

    </dependencies>

    <build>
        <finalName>dreamLoad</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>
                <!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging -->
                <plugin>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version>3.0.2</version>
                </plugin>
                <plugin>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.8.0</version>
                </plugin>
                <plugin>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.22.1</version>
                </plugin>
                <plugin>
                    <artifactId>maven-war-plugin</artifactId>
                    <version>3.2.2</version>
                </plugin>
                <plugin>
                    <artifactId>maven-install-plugin</artifactId>
                    <version>2.5.2</version>
                </plugin>
                <plugin>
                    <artifactId>maven-deploy-plugin</artifactId>
                    <version>2.8.2</version>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>
</project>

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

揽月泛夜舟

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

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

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

打赏作者

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

抵扣说明:

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

余额充值