修改Maven仓库路径后Spring Boot项目构建成功但@SpringBootApplication找不到
解决@SpringBootApplication注解无法识别的问题
具体解决步骤:
核对IDE与系统的Maven配置一致性
确认IDE中Build, Execution, Deployment > Maven的配置:- 确保
Maven home path指向你新配置的MAVEN_HOME路径,避免多个Maven版本冲突; - 检查
User settings file和Local repository路径完全匹配你设置的/users/<你的用户名>/my-m2/my-settings.xml和/users/<你的用户名>/my-m2/my-repository,路径里的用户名别留空或写错; - 点击Maven面板的Reload All Maven Projects按钮,强制刷新依赖。
- 确保
验证依赖完整性
手动进入自定义仓库路径/users/<你的用户名>/my-m2/my-repository,查找org/springframework/boot/spring-boot-starter/2.5.3目录,确认jar包完整存在。如果缺失或损坏,删除该目录后执行:mvn clean install -U-U参数会强制Maven更新快照依赖,重新下载完整的包。调整Java版本适配Spring Boot
你的pom.xml里指定了Java 17,但Spring Boot 2.5.3仅对Java 17提供实验性支持,版本不兼容可能导致注解识别异常:- 要么将pom.xml中的
<java.version>改为11(Spring Boot 2.5.x推荐版本); - 要么将
spring-boot-starter-parent的版本升级到2.6及以上(正式支持Java 17)。
修改后重新刷新Maven依赖。
- 要么将pom.xml中的
清理IDE缓存
IDE缓存可能导致依赖识别异常,执行:- 点击
File > Invalidate Caches...; - 勾选
Clear file system cache and local history; - 重启IDE。
- 点击
你的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 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.5.3</version> <relativePath/> <!-- lookup parent from repository --> </parent> <packaging>jar</packaging> <groupId>com.example</groupId> <artifactId>demo111111</artifactId> <version>0.0.1-SNAPSHOT</version> <name>demo111111</name> <description>Demo project for Spring Boot</description> <properties> <java.version>17</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
内容的提问来源于stack exchange,提问作者Grigor
相关产品推荐
相关产品推荐

