【问题标题】:How to run main class packed in springboot jar如何运行包装在 Spring Boot jar 中的主类
【发布时间】:2018-09-26 23:33:55
【问题描述】:

我的项目使用springboot,打包成jar文件后,我可以执行java -jar my-project.jar来运行实例。

我还有一个作为主类的脚本,当我执行java -cp my-project.jar com.test.MyScript 时,它显示Could not find or load main class

怎么会这样?顺便说一句,当我执行java -cp my-project.jar com.test.MyApplication 时,也会出现同样的错误。 MyApplicationSpringBootApplication 类。

为什么我不能手动运行主类?

【问题讨论】:

标签: java spring-boot main


【解决方案1】:

那是因为 spring boot 不使用SpringBootApplication 作为主入口点。它使用org.springframework.boot.loader.Launcher

摘自spring docs

org.springframework.boot.loader.Launcher 类是一个特殊的 用作可执行 jar 的主要入口点的引导类。 它是 jar 文件中的实际 Main-Class,用于设置 一个合适的 URLClassLoader 并最终调用你的 main() 方法。

【讨论】:

猜你喜欢
  • 2018-04-01
  • 2021-05-27
  • 2018-10-17
  • 1970-01-01
  • 2019-05-04
  • 1970-01-01
  • 2014-06-06
  • 2019-08-23
相关资源
最近更新 更多