You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot应用主类打包成jar后无法识别该如何解决

问题排查及解决方案

1. 命令执行错误

你当前使用的maven clean > maven package是错误命令:>是系统重定向符号,会将maven clean的执行结果输出到名为maven package的文件中,而非执行package打包动作。
正确的打包命令应为:

mvn clean package

2. Spring Boot Maven插件配置缺失

标准的可执行Jar打包插件需要配置执行目标,正确配置参考如下:

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <!-- 可选:显式指定主类,无特殊路径需求可省略,插件会自动扫描带@SpringBootApplication的类 -->
            <configuration>
                <mainClass>com.xxx.你的主类全限定名</mainClass>
            </configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

如果缺少<executions>段的repackage目标配置,maven打包生成的是普通jar而非Spring Boot可执行jar,内置没有主类声明和依赖加载结构,运行时就会报主类无法识别的错误。

3. 主类配置校验

  • 确认你的启动主类上添加了@SpringBootApplication注解
  • 如果主类不在默认的根包路径下,需要在插件配置的<mainClass>标签中显式填写主类的全限定名,也可以在pom.xml的<properties>段添加<start-class>com.xxx.主类全限定名</start-class>声明。

修改完成后重新执行正确的打包命令,再运行生成的jar即可。

内容的提问来源于stack exchange,提问作者Josh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 15:54:09