Bootstrap

Springboot启动失败 DB连不上竟然是maven配置的问题

Springboot启动失败:Failed to instantiate [javax.sql.DataSource]。

最开始以为是DB版本后,需要升级驱动版本,但更新驱动版本还是不行,而且另外一个项目同样驱动同样配置可以启动。

后面发现代码读取不到yml文件中的配置信息。

最后通过回退代码最终找到有问题的配置,竟然是pom文件中maven-compiler-plugin配置被误删了部分代码如下:

<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-compiler-plugin</artifactId>
	<version>3.7.0</version>
	<configuration>
	    <encoding>${project.build.sourceEncoding}</encoding>
	    <source>${jdk.version}</source>
	    <target>${jdk.version}</target>
	    <!-- 误删代码 -->
	    <annotationProcessorPaths>
	        <path>
	            <groupId>org.projectlombok</groupId>
	            <artifactId>lombok</artifactId>
	            <version>${lombok.version}</version>
	        </path>
	        <path>
	            <groupId>org.mapstruct</groupId>
	            <artifactId>mapstruct-processor</artifactId>
	            <version>${mapstruct.version}</version>
	        </path>
	        <path>
	            <groupId>org.projectlombok</groupId>
	            <artifactId>lombok-mapstruct-binding</artifactId>
	            <version>0.2.0</version>
	        </path>
	    </annotationProcessorPaths>
	</configuration>
</plugin>

应该是项目启动时用到lombok的配置,影响到了DB连接程序。

其实我应该想到项目启动失败,不仅和DB配置有关,而且和pom配置也有关呀。

顺便提下,maven-compiler-plugin主要用来根据指定的jdk版本去编译源码生成class文件:

maven-compiler-plugin指定的默认jdk版本:

参考:https://www.cnblogs.com/east7/p/13363069.html 

官网官网每个版本文档中有写springboot版本对应的jdk要求(以下链接改个版本可查):Spring Boot Reference Documentation

 类似博客:

如何查看SpringBoot和JDK版本的对应关系_wx643fa5533cba9的技术博客_51CTO博客

Springboot end of support date:

Spring Boot

;