SpringBoot 没有主清单属性(maven)

新手上路,请多包涵

运行我的 jar 文件时: java -jar target/places-1.0-SNAPSHOT.jar

我收到下一个错误:

没有主要清单属性,在 target/places-1.0-SNAPSHOT.jar 中

pom.xml 包含 spring-boot-maven-plugin

 <plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <mainClass>com.places.Main</mainClass>
    </configuration>
</plugin>

我还尝试创建一个 MANIFEST.MF 文件并指定类,但没有帮助。

此外,我还尝试过:

 <properties>
      <!-- The main class to start by executing "java -jar" -->
      <start-class>com.places.Main</start-class>
</properties>

主要类:

 @SpringBootApplication
public class Main {
    public static void main(String[] args) throws InterruptedException {
        SpringApplication.run(Main.class,args);
    }
}

知道我还能尝试什么吗?

原文由 JeyJ 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1k
2 个回答

尝试将 repackage 目标添加到执行目标。

否则,您需要将插件显式调用为 mvn package spring-boot:repackage

添加目标后,您只需调用 mvn package

 <plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <mainClass>com.places.Main</mainClass>
    </configuration>

    <executions>
        <execution>
            <goals>
                <goal>repackage</goal>
            </goals>
        </execution>
    </executions>
</plugin>

原文由 Matej 发布,翻译遵循 CC BY-SA 4.0 许可协议

Maven package 生命周期阶段, jar 存档由 Spring Boot Maven 插件 增强,原始 jar 文件(应该使用标准 maven-jar-plugin 构建)被替换为 增强可执行 jar .

因此,您必须在构建模块时自己发出 spring-boot:repackage 目标:

 mvn package spring-boot:repackage

或者在插件配置中明确添加 goal

 <plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <mainClass>com.places.Main</mainClass>
    </configuration>
    <executions>
        <execution>
            <goals>
                <goal>repackage</goal>
            </goals>
        </execution>
    </executions>
</plugin>

您可以在官方文档中找到有关 Spring Boot Maven 插件 repackage 目标 的更多详细信息。

原文由 tmarwen 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题