【Java】用maven打包web项目,pom中只有一个版本的spring,但是WEB-INF/lib 下出现多个版本spring ?

问题描述

用maven管理一个web项目,依次执行 mvn clean,mvn compile,mvn package后,发现WEB-INF/lib下出现多个版本的spring框架,而且<scope>表面是provided的依赖也被放入到了lib目录下,这是以前没有遇到过的,甚是奇怪!

问题出现的平台版本及自己尝试过哪些方法

maven 3.6

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)
pom.xml文件内容如下:

<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>com.elefirst</groupId>

<artifactId>energyManage</artifactId>

<version>0.0.1-SNAPSHOT</version>

<packaging>war</packaging>

<properties>

<spring.version>4.3.22.RELEASE</spring.version>

<log.version>1.7.25</log.version>

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

</properties>

<dependencies>

<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-webmvc</artifactId>

<version>${spring.version}</version>

<exclusions>

<exclusion>

<groupId>commons-logging</groupId>

<artifactId>commons-logging</artifactId>

</exclusion>

</exclusions>

</dependency>

<!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc -->

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-jdbc</artifactId>

<version>${spring.version}</version>

</dependency>

<!-- https://mvnrepository.com/artifact/org.springframework/spring-aspects -->

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-aspects</artifactId>

<version>${spring.version}</version>

</dependency>

<!--Spring-test -->

<!-- https://mvnrepository.com/artifact/org.springframework/spring-test -->

<!-- <dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-test</artifactId>

<version>4.3.7.RELEASE</version>

</dependency> -->

<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->

<!-- <dependency>

<groupId>org.mybatis</groupId>

<artifactId>mybatis</artifactId>

<version>3.4.6</version>

</dependency> -->

<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring -->

<!-- <dependency>

<groupId>org.mybatis</groupId>

<artifactId>mybatis-spring</artifactId>

<version>1.3.2</version>

</dependency> -->

<!-- mybatis-plus

包含了 mybatis 和 mybatis-spring 依赖,版本符合

-->

<dependency>

<groupId>com.baomidou</groupId>

<artifactId>mybatis-plus</artifactId>

<version>3.0.7.1</version>

</dependency>

<!-- https://mvnrepository.com/artifact/c3p0/c3p0 -->

<!-- https://mvnrepository.com/artifact/com.mchange/c3p0 -->

<dependency>

<groupId>com.mchange</groupId>

<artifactId>c3p0</artifactId>

<version>0.9.5.3</version>

</dependency>

<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->

<dependency>

<groupId>mysql</groupId>

<artifactId>mysql-connector-java</artifactId>

<version>5.1.40</version>

</dependency>

<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->

<dependency>

<groupId>javax.servlet</groupId>

<artifactId>javax.servlet-api</artifactId>

<version>3.1.0</version>

<scope>provided</scope>

</dependency>

<!-- https://mvnrepository.com/artifact/javax.servlet.jsp.jstl/jstl

<dependency>

<groupId>javax.servlet.jsp.jstl</groupId>

<artifactId>jstl</artifactId>

<version>1.2</version>

</dependency>-->

<!-- https://mvnrepository.com/artifact/junit/junit -->

<dependency>

<groupId>junit</groupId>

<artifactId>junit</artifactId>

<version>4.10</version>

<scope>test</scope>

</dependency>

<!-- https://mvnrepository.com/artifact/org.mybatis.generator/mybatis-generator-core -->

<dependency>

<groupId>org.mybatis.generator</groupId>

<artifactId>mybatis-generator-core</artifactId>

<version>1.3.5</version>

</dependency>

<!--引入pageHelper分页插件 -->

<dependency>

<groupId>com.github.pagehelper</groupId>

<artifactId>pagehelper</artifactId>

<version>5.0.0</version>

</dependency>

<!-- 返回json字符串的支持 -->

<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->

<dependency>

<groupId>com.fasterxml.jackson.core</groupId>

<artifactId>jackson-core</artifactId>

<version>2.9.5</version>

</dependency>

<dependency>

<groupId>com.fasterxml.jackson.core</groupId>

<artifactId>jackson-databind</artifactId>

<version>2.9.5</version>

</dependency>

<dependency>

<groupId>com.fasterxml.jackson.core</groupId>

<artifactId>jackson-annotations</artifactId>

<version>2.9.5</version>

</dependency>

<!-- https://mvnrepository.com/artifact/org.json/json -->

<dependency>

<groupId>org.json</groupId>

<artifactId>json</artifactId>

<version>20160810</version>

</dependency>

<dependency>

<groupId>com.alibaba</groupId>

<artifactId>fastjson</artifactId>

<version>1.2.4</version>

</dependency>

<!-- https://mvnrepository.com/artifact/log4j/log4j -->

<!-- 用于系统控制台的日常异常、错误、警告等日志输出 -->

<dependency> <!-- 标准日志接口 -->

<groupId>org.slf4j</groupId>

<artifactId>slf4j-api</artifactId>

<version>${log.version}</version>

</dependency>

<dependency> <!-- 替代spring框架中的commons-logging包,否则会冲突 -->

<groupId>org.slf4j</groupId>

<artifactId>jcl-over-slf4j</artifactId>

<version>${log.version}</version>

</dependency>

<dependency> <!-- 日志标准接口slf4j 与 具体实现的绑定 -->

<groupId>org.slf4j</groupId>

<artifactId>slf4j-log4j12</artifactId>

<version>${log.version}</version>

</dependency>

<dependency> <!-- 日志的具体实现 -->

<groupId>log4j</groupId>

<artifactId>log4j</artifactId>

<version>1.2.17</version>

</dependency>

<dependency>

<groupId>aopalliance</groupId>

<artifactId>aopalliance</artifactId>

<version>1.0</version>

</dependency>

<dependency>

<groupId>org.aspectj</groupId>

<artifactId>aspectjweaver</artifactId>

<version>1.7.4</version>

</dependency>

<dependency>

<groupId>commons-fileupload</groupId>

<artifactId>commons-fileupload</artifactId>

<version>1.3.1</version>

</dependency>

<dependency>

<groupId>commons-io</groupId>

<artifactId>commons-io</artifactId>

<version>1.3.2</version>

</dependency>

<dependency>

<groupId>commons-lang</groupId>

<artifactId>commons-lang</artifactId>

<version>2.6</version>

</dependency>

<!-- 第三方消息推送

去官网下载,然后install本地仓库

-->

<dependency>

<groupId>com.gexin.platform</groupId>

<artifactId>gexin-rp-sdk-http</artifactId>

<version>4.1.0.1</version>

</dependency>

<dependency>

<groupId>com.gexin.platform</groupId>

<artifactId>gexin-rp-sdk-template</artifactId>

<version>4.0.0.20</version>

</dependency>

<dependency>

<groupId>com.gexin.platform</groupId>

<artifactId>gexin-rp-sdk-base</artifactId>

<version>4.0.0.26</version>

</dependency>

<!--

easypoi

excel 导入导出第三方工具包

依赖validation 和 javassist 可能无法从仓库下载,需手动加入的仓库中

-->

<dependency>

<groupId>cn.afterturn</groupId>

<artifactId>easypoi-base</artifactId>

<version>4.0.0</version>

</dependency>

<dependency>

<groupId>cn.afterturn</groupId>

<artifactId>easypoi-annotation</artifactId>

<version>4.0.0</version>

</dependency>

<dependency>

<groupId>cn.afterturn</groupId>

<artifactId>easypoi-web</artifactId>

<version>4.0.0</version>

</dependency>

</dependencies>

<build>

<finalName>energyManage</finalName>

<resources>

<!--表示把java目录下的有xml文件,properties文件编译/打包的时候放在resource目录下-->

<resource>

<directory>${basedir}/src/main/java</directory>

<includes>

<include>**/*.properties</include>

<include>**/*.xml</include>

</includes>

</resource>

<resource>

<directory>${basedir}/src/main/resources</directory>

</resource>

</resources>

<plugins>

<plugin>

<groupId>org.mybatis.generator</groupId>

<artifactId>mybatis-generator-maven-plugin</artifactId>

<version>1.3.5</version>

<configuration>

<verbose>true</verbose>

<overwrite>true</overwrite>

</configuration>

</plugin>

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-compiler-plugin</artifactId>

<version>3.5.1</version>

<configuration>

<source>1.8</source>

<target>1.8</target>

<encoding>utf-8</encoding>

</configuration>

</plugin>

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-war-plugin</artifactId>

<version>3.0.0</version>

</plugin>

</plugins>

</build>

</project>

WEB-INF/lib 内容如下:
【Java】用maven打包web项目,pom中只有一个版本的spring,但是WEB-INF/lib 下出现多个版本spring ?

你期待的结果是什么?实际看到的错误信息又是什么?

请问问题出在哪里?怎么解决?

回答

以上是 【Java】用maven打包web项目,pom中只有一个版本的spring,但是WEB-INF/lib 下出现多个版本spring ? 的全部内容, 来源链接: utcz.com/a/91184.html

回到顶部