线程“main”中的异常 java.lang.NoSuchMethodError: 'org.springframework.core.io.support.SpringFactoriesLoader org.springframework.core.io.support.SpringFactoriesLoader.forDefaultResourceLocation(java.lang.ClassLoader)'
无法解析“SpringFactoriesLoader”中的“forDefaultResourceLocation”方法
SpringAppliacation 的基本代码:
private <T> List<T> getSpringFactoriesInstances(Class<T> type, ArgumentResolver argumentResolver) {
return SpringFactoriesLoader.forDefaultResourceLocation(getClassLoader()).load(type, argumentResolver);
}
如果它可能对我的代码有帮助:
@SpringBootApplication
public class Spring3Application {
public static void main(String[] args) {
SpringApplication.run(Spring3Application.class, args);
}
}
我不知道该怎么做,因为我无法更改此文件中的任何内容。这样我就可以做吗?
我刚开始学习Spring boot,使用IntelliJ IDEA
我在使用 IntelliJ Community 版本并运行从 Spring Initialiazr 下载的项目时遇到了同样的问题。我必须下载的原因是 IntelliJ Community 版本不像 Ultimate 版本那样提供 Spring。
当我使用 Ultimate IntelliJ(有 30 天试用选项)并创建新项目(与您的相同)时,我可以毫无问题地运行它。
一开始我猜测问题来自于IntelliJ Community版本,但是当我在Udemy上发布问题时,助理老师说他可以在Community版本上运行它,没有任何问题。所以我的选择是使用 Ultimate 版本,因为不值得浪费时间来查找问题。
希望这有帮助!
将 spring-core 依赖版本从 5.3.x 升级到 6.0.11 后,它对我有用