【问题标题】:Spring Boot in Maven: "No auto configuration classes found in META-INF/spring.factories"Maven 中的 Spring Boot:“在 META-INF/spring.factories 中找不到自动配置类”
【发布时间】:2021-09-08 11:43:33
【问题描述】:

我正在学习 Java 和 Spring Boot(我对编程很陌生)。我制作了一个简单的 API 应用程序,我可以从 IntelliJ 运行它并正确响应对其发出的请求。现在我想将它打包为一个可执行的 .jar 文件,以便我可以尝试将它托管在远程服务器上,但是我制作的 jar 文件无法正常运行。 错误是:java.lang.IllegalArgumentException: No auto configuration classes found in META-INF/spring.factories. If you are using a custom packaging, make sure that file is correct.

这是一个 Maven 项目,我认为这可能是我的 pom.xml 文件的问题,但经过几个小时的尝试,我无法弄清楚解决方案可能是什么。有人可以帮帮我吗?

我的 pom.xml 在这里:https://github.com/NickRoach/simple-spring-API/blob/main/demo/pom.xml 项目的其余部分也可以在那里找到。

【问题讨论】:

  • 如何创建可执行jar?是通过maven吗?你能发布命令吗?
  • 是的,我可以制作可执行的 jar。我通过将其设置为 IntelliJ 中的工件来做到这一点
  • 已解决。我没有将 intelliJ 设置为将 .jar 文件制作为工件,而是在 gitbash 的项目目录中给出了命令“./mvnw package -DskipTests”(一位导师给了我这个建议)。这构建了项目,生成的 jar 文件运行正常
  • 不要忘记添加您的解决方案作为答案,然后在可能的情况下接受它作为正确的答案;)
  • 谢谢,我做到了:)

标签: java spring spring-boot maven


【解决方案1】:

解决了。我没有将 intelliJ 设置为将 .jar 文件制作为工件,而是在 gitbash 的项目目录中给出了命令“./mvnw package -DskipTests”(一位导师给了我这个建议)。这构建了项目,生成的 jar 文件运行正常

【讨论】:

  • 我还发现可以设置 IntelliJ 使用 Maven 构建脚本:在 IntelliJ:文件 -> 设置 -> 构建、执行、部署 -> 构建工具 -> Maven -> Runner 检查框:“将 IDE 构建/运行操作委托给 Maven”
猜你喜欢
  • 2019-08-09
  • 2020-08-19
  • 2018-09-17
  • 2018-04-14
  • 2017-09-21
  • 2018-08-27
  • 1970-01-01
  • 2018-12-21
  • 2021-10-28
相关资源
最近更新 更多