no main manifest attribute, in /app/app.jar

Linux部署Spring Boot项目踩坑记:No main manifest attribute报错全解析 本文深入解析了在Linux服务器上部署Spring Boot项目时遇到的'No main manifest attribute'报错。该错误通常源于JAR包内MANIFEST.MF文件缺少Main-Class属性。文章提供了从排查JAR包结构、检查Maven配置(特别是spring-boot-maven-plugin)到修复打包问题的完整解决方案,并介绍了Docker容器化等进阶部署方案,帮助开发者彻底解决此常见部署难题。 阅读详情

一 概述

        今天在发布项目到docker容器中的时候,项目启动没有报错,但是日志提示:

no main manifest attribute, in /app/app.jar

二 修复

        增加配置:

 <build>
        <finalName>${project.name}</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <includeSystemScope>true</includeSystemScope>
                    <--指定主类-->
                    <mainClass>com.**.**.xxxApplication</mainClass>
                </configuration>
            </plugin>

            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>dockerfile-maven-plugin</artifactId>
                <dependencies>
                    <dependency>
                        <groupId>javax.activation</groupId>
                        <artifactId>activation</artifactId>
                        <version>1.1.1</version>
                    </dependency>
                </dependencies>
                <configuration>
                    <repository>${project.artifactId}</repository>
                    <buildArgs>
                        <JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>
                    </buildArgs>
                </configuration>
            </plugin>
        </plugins>
    </build>

        注意增加项目名称信息

<name>api-thirdparty</name>

        补充dockerfile配置:

FROM openjdk:8-jdk-alpine
COPY ./target/*.jar /app/app.jar
# ENTRYPOINT ["java","-Xmx500m","-jar","/app/app.jar"]
ENTRYPOINT ["java","-Xmx500m","-jar","-Dspring.profiles.active=dev","/app/app.jar"]
EXPOSE 端口号如:8168

        如有更多细节后续补充。。。

Linux下Spring Boot项目打包报错?手把手教你修复No main manifest attribute问题 本文深入解析了在Linux环境下部署Spring Boot项目时遇到的经典报错“No main manifest attribute”的根本原因。通过剖析JAR包结构、MANIFEST.MF文件作用,并提供从诊断、修复到预防的完整方案,指导开发者正确配置spring-boot-maven-plugin,确保生成可执行JAR包,并分享进阶的自动化部署与Docker化实践。 阅读详情

相关推荐

no main manifest attribute, in app.jar

每个人都有惰性,但不断学习是好好生活的根本,共勉!

感谢阅读 3780

no main manifest attribute, in /app.jar

【代码】no main manifest attribute, in /app.jar。

gaohuanjie的专栏 3767

K8S部署Java项目 pod报错 logs日志内容:no main manifest attribute, in app.jar

每个人都有惰性,但不断学习是好好生活的根本,共勉!

感谢阅读 2852

2021-08-03

** 执行jar包报错 no main manifest attribute, in /app.jar ** <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions&gt

Ice__cola的博客 391

fastjson-1.1.31_noneautotype.jar中文文档.zip

1、压缩文件中包含: 中文文档、jar包下载地址、Maven依赖、Gradle依赖、源代码下载地址。 2、使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 3、特殊说明: (1)本文档为人性化翻译,精心制作,请放心使用; (2)只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; (3)不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 4、温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件。 5、本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册。

时序约束实战:从setup/hold到时钟路径约束的深度解析

本文深度解析数字设计中的时序约束实战,重点探讨如何从setup/hold检查的核心原理出发,理解并应用时钟路径约束。文章通过剖析Path Requirement的计算逻辑,结合同频、倍频及异步时钟域等典型场景,提供了从解读时序报告到编写、调试SDC约束的系统方法,帮助工程师有效应对复杂SoC设计中的时序收敛挑战。

weixin_29291185的博客 105

springboot打包 no main manifest attribute, in /app.jar

没有主清单 根据网上的教程,总结了以下几种方法:(最终的解决方法在第四点) 1、java -cp(失败,但是大家可以试试看) 相信大家在网上找的都是这个教程,具体就是: java -cp 你的jar名称.jar 工程的main函数所在的java文件(例如com.ndd.test.DataApplication) java -cp data.jar com.ndd.test.DataApplicat...

qq_43481350的博客 7171

Python金融数据获取工具库之baostock使用详解

在金融数据分析和量化交易中,获取准确及时的市场数据是非常重要的。baostock是一个专门为中国股市数据提供支持的 Python 库,它提供了免费的股票数据接口,用户可以方便地获取股票、指数、基金等各种金融数据。本文将详细介绍baostock库,包括其安装方法、主要特性、基本和高级功能,以及实际应用场景,帮助全面了解并掌握该库的使用。

Rocky006的博客 5343

boot-package no main manifest attribute, in /app.jar

boot打包:no main manifest attribute, in /app.jar 解决方案 <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> //...

面朝大海,春暖花开 9175

RoCE Overlay

1. RoCE over vxlan 配置vxlan封装的RoCE流量,可以在PF switchdev模式下利用ovs bridge,或直接设置tc rules。下面将基于一对NIC互联的服务器介绍两种方式的使用,并分析封装后的数据包结构。 1.1. 基本配置 - VF与switchdev 首先创建VF,并为两个host设置PF的switchdev模式。使用ovs bridge或tc rules,...

sunshuying1010的博客 3058

免杀思路总结

免杀思路总结 1.免杀技术简介 1.免杀的重要性 2.免杀的难度 3.杀毒软件的排行 国外 国内 1 、Bitdefender 1、360 2 、Norton 360 2、智量安全(没测过,据说很厉害) 3 、Kaspersky 3、火绒安全 4 、Webroot 4、金山独霸 5 、Trend Micro 5

LiBai'S BLOG 1万+

no main manifest attribute, in /app.jar 没有主清单属性

运行jar没有主清单属性:pom文件添加 <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin>

A_XJF01的博客 1407

基于STM32L4XX、HAL库的AD7124-8BCPZ模数转换器ADC驱动程序设计

/ 公式: Voltage = (adc_value / (2^23 - 1)) * Vref。// 模式控制位[7:5]=000 (连续转换模式)// 3.2 配置通道0,使其使用AIN0(+)和AIN1(-),并关联到配置0和滤波器0。= 0x14) { // AD7124-8的ID是0x14。// 双极性操作,缓冲AINP/AINN。

zhusl6688的博客 376

no main manifest attribute, in /app.jar (jar中没有主清单属性 )

眼瞎了。。。 原来pom文件是这样的: 居然放在了 pluginManagement中!!! <build> <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) --> <plugins> <plugin>

正怒月神的博客 3595

Vue3+Openlayers教程导航页【目录】

欢迎来到 Vue3+Openlayers 系列教程,这里是我在 优快云 编写的所有 Vue3+Openlayers 系列相关文章的索引页,适合初学者到进阶用户系统阅读。👀 更多教程正在持续更新中,欢迎关注我,一起探索 Openlayers 的强大魅力!

小彭的博客 1260

VIVADO IP核之FIR插值器多相滤波仿真

网络上有许多文章介绍FIR低通滤波器的使用,包括仿真。关于FIR低通滤波器的使用,我之前的文章已经介绍过了,本文将继续深入介绍FIR插值器多相滤波的使用方法,并将FIR插值多相滤波的结果与MATLAB仿真计算的结果比较,验证了FIR插值器多相滤波使用正确。

m0_66360845的博客 3382

Spring类型应用找不到主函数no main manifest attribute, in /app.jar,spring-boot-maven-plugin的锅?

本文借spring-boot-maven-plugin对springboot版本管理进行了初步分析,如果spring-boot-maven-plugin的配置不正确,有可能导致spring应用找不到主函数no main manifest attribute, in /app.jar 。

austin1000的博客 3714

C++-ONNX:用onnxruntime部署自己的模型【Pytorch导出.onnx】【Tensorflow导出.onnx】【C++用onnxruntime框架部署并推理】

微软联合Facebook等在2017年搞了个深度学习以及机器学习模型的格式标准–ONNX,旨在将所有模型格式统一为一致,更方便地实现模型部署。现在大多数的深度学习框架都支持ONNX模型转出并提供相应的导出接口。ONNXRuntime(Open Neural Network Exchange)是微软推出的一款针对ONNX模型格式的推理框架,用户可以非常便利的用其运行一个onnx模型。ONNXRuntime支持多种运行后端包括CPU,GPU,TensorRT,DML等。

u013250861的博客 5766

报错no main manifest attribute, in app.jar

在app.jar中没有主清单属性

qq_45900010的博客 1805

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Java jar包运行报错:no main manifest attribute解决方案

Java应用程序打包为jar文件时,MANIFEST.MF文件中的Main-Class属性是程序执行的入口点。当该属性缺失或配置错误时,运行jar包会出现'no main manifest attribute'错误。本文深入解析Java打包机制原理,详细介绍Maven和Gradle构建工具中如何正确配置Main-Class,并提供Spring Boot项目中的特殊处理方案。针对已生成的jar包,还给出了手动修复的具体步骤。这些解决方案能有效解决Java开发中的常见打包问题,确保应用程序正常启动。

weixin_30906185的博客 341

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

no main manifest attribute, in app.jar(Docker run命令出错)

在启动SpringBoot程序打包成的镜像的时候遇到了问题,记录了我的解决方案

m0_62201229的博客 3743

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

docker运行spring boot 包镜像出现no main manifest attribute问题

问题 在进行docker部署的时候,开始对项目进行打包,在启动该镜像时 运行命令docker logs 【容器ID】,查看运行日志 提示:   no main manifest attribute, in app.jar 提示没有入口类信息  解决      项目基于maven pom多模块的开发的,需要设置goal-repackage属性为true,否则打包后文件依赖文件没有一起...

SlagSea 1万+

docker run springboot jar images error no main manifest attribute, in app.jar

docker在运行SpringBoot的jar包时出现以下异常: no main manifest attribute, in app.jar 原因: SpringBoot项目基于maven开发,pom.xml需要设置goal-repackage属性为true,否则打包后文件依赖文件没有一起打包,然后镜像内没有可以运行的程序文件。 解决方案如下: <build> <plugins> <plugin> <gr

阿一在线的博客 871

no main manifest attribute, in app-1.0-SNAPSHOT.jar

可能原因是maven的pom.xml依赖没有引入打包插件。注意:executions 的内容很重要!

YonJarLuo的博客 1889

Linux系统下运行jar文件,提示:No main manifest attribute, in XXX.jar

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34408624的博客 469

linux 执行jar包的时候报no main manifest attribute;

# java -jar home/helloworld.jar no main manifest attribute, in home/helloworld.jar在idea中打包没有问题,正常情况下,需要在jar的mainfest.mf中指定main类,报错之后,就需要重新指定他的main classjava -cp home/helloworld.jar com.zhou.App...

waterflying2015的博客 4万+
上一篇: 回顾List中获取子List方法
下一篇: Linux 安装 Docker 失败
至学者
博客等级 码龄9年 180粉丝 773原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值