如何告诉Spring Boot在可执行的JAR文件中使用哪个主类?

212
Execution default of goal 
org.springframework.boot:spring-boot-maven-plugin:1.0.1.RELEASE:repackage 
failed: 
Unable to find a single main class from the following candidates

我的项目有多个带有 main 方法的类。我该如何告诉Spring Boot Maven插件应该使用哪个类作为主类?


2
java -cp myjar.jar MyClass - Evgeni Dimitrov
4
@Evgeni: 这是一个运行时标志。它并没有执行到那一步。它在构建过程中失败了。 - Thilo
11个回答

1
如果您使用Grade,可以应用'application'插件而不是'java'插件。这样可以在不使用任何Spring Boot Gradle插件任务的情况下指定主类,如下所示。
plugins {
  id 'org.springframework.boot' version '2.3.3.RELEASE'
  id 'io.spring.dependency-management' version '1.0.10.RELEASE'
  id 'application'
}
application {
  mainClassName = 'com.example.ExampleApplication'
}

作为一个不错的好处,使用gradle run可以运行应用程序,并且Gradle会自动配置类路径。该插件还将应用程序打包为TAR和/或ZIP文件,包括特定于操作系统的启动脚本。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接