springboot3 应用启动 报错 找不到 com.mybatisflex.core.service.IService
所属分类 springboot
浏览量 5
springboot3 应用启动 报错 找不到 com.mybatisflex.core.service.IService
Caused by: java.io.FileNotFoundException:
class path resource [com/mybatisflex/core/service/IService.class]
cannot be opened because it does not exist
com.mybatisflex.core.service.IService
mybatis-flex-core-1.10.9.jar
java启动 classpath 没有该依赖
原因是 mybatis-flex-spring-boot-starter 等依赖 scope为 provided
provided 运行期不可见 且 不会打包
scope 改为 compile后 启动ok
mvn dependency:tree
[INFO] +- com.mybatis-flex:mybatis-flex-spring-boot-starter:jar:1.10.9:provided
[INFO] | +- com.mybatis-flex:mybatis-flex-spring:jar:1.10.9:provided
[INFO] | | \- org.mybatis:mybatis-spring:jar:2.1.2:provided
[INFO] | +- org.springframework.boot:spring-boot-autoconfigure:jar:2.7.18:compile
[INFO] | \- com.mybatis-flex:mybatis-flex-core:jar:1.10.9:provided
[INFO] | \- org.mybatis:mybatis:jar:3.5.19:provided
provided 依赖不会加入 启动脚本 classpath
idea file/project structure / preject settings / modules / dependencies
模块依赖的jar包以及 scope
compile runtime provided test
Maven 的 scope 用于控制依赖在项目构建生命周期(编译、测试、打包、运行)中的可见性,
以及是否被打入最终产物(如 jar/war)
scope 编译期可见 测试期可见 运行期可见 是否打入产物 核心含义
compile 是 是 是 是 默认值,全生命周期可见,核心业务依赖(如 Spring Core)
runtime 否 是 是 是 仅运行 / 测试期需要,编译期不需要(如 JDBC 驱动、MyBatis)
provided 是 是 否 否 编译 / 测试期需要,运行期由容器提供(如 Servlet API、Tomcat 核心包)
test 否 是 否 否 仅测试期需要(如 JUnit、Mockito)
provided 运行期不可见 且 不会打包
com.mybatis-flex
mybatis-flex-spring-boot-starter
provided
com.mybatis-flex
mybatis-flex-processor
provided
上一篇
下一篇
股票多因子模型实战
《股票多因子模型实战:Python 核心代码解析》 笔记
ETF 动量和反转策略
python量化项目