no main manifest attribute, in xxx.jar

本文讲述了在使用Docker运行SpringBoot应用时遇到的错误,提供了解决方案,即在pom.xml文件中添加特定SpringBootMaven插件配置,包括mainClass和finalName标签,以确保正确打包和运行应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用Docker运行一个SpringBoot应用时,出现如下图所示的错误信息
在这里插入图片描述
解决方案: SpringBoot应用的pom.xml文件中添加以下配置;重新打包即可

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
<!--    如果不指定版本,容器出现一下错误;当前SpringBoot的版本就是1.6.13            -->
<!--    org/springframework/boot/maven/RepackageMojo has been compiled by a more 
recent version of the Java Runtime (class file version 61.0), this version of the 
Java Runtime only recognizes class file versions up to 55.0-->
                <version>2.6.13</version>
                <configuration>

<!--   mainClass 标签是解决'no main manifest attribute, in xxx.jar' 问题的关键,这里配置的是当前应用主启动类的包名              -->
<!--   如果你的项目没有有启动类,也不需要通过 'java -jar' 运行的话可以不用配置 mainClass                 -->
                    <mainClass>com.idooy.gulimall.gateway.GulimallGatewayApplication</mainClass>
<!--   finalName 标签里的就是打出来的 jar 名,一般进行配置,使用默认的即可  -->
<!--                    <finalName>${project.artifactId}</finalName>-->
<!--   如果你希望最终生成的 jar 包不包含第三方依赖那直接用上面的插件配置即可。如果希望最终生成的 jar 包里包含第三方依赖那就删除 includes 标签及其里面的内容  -->
<!--                    <includes>-->
<!--                        <include>-->
<!--                            <groupId>nothing</groupId>-->
<!--                            <artifactId>nothing</artifactId>-->
<!--                        </include>-->
<!--                    </includes>-->
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值