spring-boot - 使用maven编译时出错,找不到定义为依赖的jar中定义的类
问题描述
我正在学习 Spring Boot。我的 Spring Boot 项目由三个 Spring Boot 项目构成:api-rest、data 和 web。
pom.xml (parent)
api-rest
pom.xml (generate war)
data
pom.xml (generate jar)
web
pom.xml (generate war)
api-rest项目具有定义模型和存储库的数据项目作为依赖项。当我从命令行编译时出现错误(我运行以下命令:mvn clean install):
api-rest: Compilation failure: Compilation failure:
[ERROR] /src/main/java/com/example/mypacket/controller/CountryController.java:[4,60] cannot find symbol
[ERROR] symbol: class Country
[ERROR] location: package com.example.mypacket.model
但是,使用 IntelliJ IDEA IDE 时不会观察到此错误,但会在 Spring 工具套件 IDE 中重现该错误。
为什么会出现命令行错误?
我检查了生成 IntelliJ 的战争是否包含与正确安装在本地 maven 存储库中的数据项目关联的 jar。数据项目与 maven 完美编译,其 jar 安装在本地存储库中。
Spring Boot 的版本是 2.4.5。
我注意到它生成的 JAR 具有 Spring Boot 结构。如果项目生成传统结构的JAR,则不会出现错误。
解决方案
推荐阅读
- javascript - 如何在 React 中的对象数组列表中将图像作为道具传递
- python - 多维列表和数组
- java - Looking for Java's ThreadPool with the ability to fallback to serial execution
- regex - Check if URL is in a sentence with regex
- reactjs - react props comes blank on first transaction
- c++ - opencv c++“缺少';' 在'<'之前“当我声明一个向量时
功能 - python - 使用形态学运算计算圆
- java - doFilter Spring Security 中的@Autowire 服务
- asp.net-identity - 使用身份服务器和 asp 身份时出现方法“get_Info”错误
- oracle - Oracle中这些列的数据长度是多少 - 表设计