IDEA导出jar包报错

执行时如果报莫名的错误,有些看似简单错误不要一味的以为是IDE工具有问题,需要从流程上找原因

错误: 找不到或无法加载主类 com.xxx.xxx

无意中莫名其妙的发现这个错误,这个看起来是个很简单的错误,但如果不细心去发现,很难解决,在网上搜了很多,大部分人都是说IDE工具有问题,说什么要改变导出路径、重新安装jdk、编译环境有问题什么的,解决方法大都没说到重点,试了一下午也没搞定。后来对网上信息完全失望,休息了会,研究了会这个提示的用意,这不是很明显吗,这个主类文件难道没在编译包里吗,或是被放错位置了?于是用压缩包软件打开jar包看了下文件结构:

结果查看没问题啊,都是在正确的目录啊,这可以充分说明不是IDE的问题,但怎么会这么怪异呢?
有这个错误就肯定有他的原因,jar程序最先找的是MANIFEST.MF文件,可以从这里着手去查。

META-INF目录

META-INF目录是jar程序的指引目录,一些引导性的配置包括MANIFEST.MF和程序都是在这里面。打开这个目录情况:

看到这里面会有这么多文件,我就一个很简单的执行程序啊,不用一个一个看,这里面肯定是有引导问题,于是把这个目录里的除MANIFEST.MF外的所有文件都删掉(注意文件夹不能删),关掉压缩包软件重新运行jar包:

发现现在运行已正常

找出引起错误的原因

如果每次生成jar包都要去删一遍里面的错误文件,那太low了吧,所以必须要找到这些文件是从哪来的,必须要把这个坑给补了。经过一番审查,最终把目标锁定在第三方jar包上,使用压缩包软件打开每个第三方jar包,里面凡是带有META-INF目录的,里面的文件都给删掉,问题解决。
我从网上下的这个包:
上图这个包有这么三个引导配置文件,显然是个大坑啊!

【IDEA导出jar包】错误: 找不到或无法加载主类 com.xxx.xxx相关推荐

  1. 错误: 找不到或无法加载主类 com.xxxx.xxx.Application

    从git仓库拉了一个子项目, 启动时报错, 找不到或无法加载主类, 检查了依赖和配置文件都没有问题 1.在子模块上右键 , 重新构建子模块 2.清除编译 3.重新编译

  2. zzw原创_cmd下带jar包运行提示 “错误: 找不到或无法加载主类 ”

    在windows下编译java,由于是临时测试一下文件,不想改classpath,就在命令行中用 -cp 或classpath引入jar包,用javac编译成功,便使用java带-cp 或classp ...

  3. gradle打成jar包报错 错误: 找不到或无法加载主类 App(已经配置过主类)

    文章目录 将gradle打成jar包(包括依赖) 运行jar包 报错 原因(src自己手动创建的) 解决(添加src目录) 将gradle打成jar包(包括依赖) jar {manifest {att ...

  4. [Kafka][错误: 找不到或无法加载主类 Files\Java\jdk1.8.0_101\lib\dt.jar;C:\Program]

    **背景:**最近需要使用kafka服务器,之前只安装了JRE,通过命令能够正常启动kafka服务器.后来卸载了JRE,重新安装了一个JDK(含JRE),启动时kafka时会报错. **现象:**cm ...

  5. Error 错误: 找不到或无法加载主类

    jar包问题:项目的Java Build Path中的Libraries中有个jar包的Source attachment指为了一个不可用的jar包,解决办法是:将这个不可用的jar包remove掉. ...

  6. Java 错误: 找不到或无法加载主类,问题集合

      正确编译命令: javac Hello.java 正确运行命令: java Hello 错误1:H:\code>java Hello.java 错误: 找不到或无法加载主类 Hello.ja ...

  7. java错误 找不到或无法加载主类

    java:错误: 找不到或无法加载主类 1.确定JDK版本 ​ 因为随着时间的改变,JDK本身也伴随着更改和变化,在解决这个问题前,我们要确定一下jdk的版本,比较老的版本有老的版本的解决方法,比较新 ...

  8. Java:cmd命令行中 错误: 找不到或无法加载主类(从原理出发讲解!)

    参考阅读(推荐) 使用java命令运行class文件提示"错误:找不到或无法加载主类"的问题分析 以下为原答案,不适用于所有问题场景,敬请参考上述链接(讲解非常细致) 知识点 ja ...

  9. 【java】Eclipse错误: 找不到或无法加载主类或项目无法编译10种解决大法!

    原文地址:Eclipse错误: 找不到或无法加载主类或项目无法编译10种解决大法! 今天启动项目,又遇到找不到或无法加载主类的情况,清除项目后无法编译,class文件下没有.class文件,至少遇到3 ...

最新文章

  1. 类属性、类方法;私有属性、公有属性;私有方法、公有方法;静态属性、静态方法;python的命名规范__xx__\__xx\_xx(自用笔记)
  2. 元宇宙iwemeta: 苹果Apple推动元宇宙产业的生态体系
  3. MySQL高级 trace工具
  4. asp.net的一些对话
  5. linux 编程头文件搜索规则
  6. Provisioning Services 7.8 入门系列教程之九 手动更新虚拟磁盘
  7. 【大数据部落】 17年房贷市场数据调研报告
  8. 商标是否占用查询方法、阿里云商标注册方法
  9. 为什么你应该学习编程?
  10. 造轮子,layuiAdmin——基于layui的后台管理模板
  11. dubbo 的SPI机制Adaptive适配
  12. echarts设置图标图例legend为圆,长方形,扇形等
  13. gbase 8d客户端功能事项
  14. 【嵌入式Linux应用开发】温湿度监控系统——绘制温湿度折线图
  15. 搜索引擎排名和Page Rank 关联分析
  16. 影子价格的经济学意义和特点
  17. 安装eclipse过程
  18. [Algorithmic Toolbox学习笔记][week6]0/1 Knapsack Problem
  19. input框聚焦时,提示文字上移
  20. 使用ArcGIS统计栅格数据面积

热门文章

  1. 分享我的电子藏书:Java系列
  2. 【幻灯片制作】Focusky教程 | 神奇的线条
  3. 计算机硬片,PVC 硬片拉伸强度试验机
  4. 怎么创建服务器集群?
  5. 评测3款高颜值的azw3阅读器(ios手机适用)
  6. ksweb打开php,如何在Android上使用ksweb+app从PHP运行Python?
  7. 男生报计算机专业前景,男生学什么专业就业前景好?
  8. 新标准大学英语第二版视听说教程1-4
  9. HTML学习---中文网页编码声明
  10. Jquery slider范围滑块,为两个滑块设置不同的setp值