IDEA导出jar包后运行报错 找不到或无法加载主类
来源:互联网 发布:中国家暴数据统计2017 编辑:程序博客网 时间:2024/05/16 11:04
开发工具:IDEA16
运行环境:ubuntu
问题:根据网上的Idea导出jar包的方法,将我的项目导出jar包后运行报错:找不到或无法加载主类。
为了找到这个原因,我重新搭建了一个测试例子,在src/com下新建了一个HelloWorld.java类,输出HelloWorld。然后把它导出jar包,依然报错:找不到或无法加载主类。
后来打开这个jar包发现在test.jar里边还有一个test.jar包
然后我把里边这个jar包提取出来后,运行java -jar test.jar就不会报错了,也能正常输出HelloWorld
经过各种重复实验,重新尝试每一步的配置,终于发现了错误的地方。
根据网上的配置,在 Project Structure --> Artifacts中,添加jar包时,选择了copy to the out directory and link via manifest
备注:我参考的Idea打jar包的方法链接是:http://www.cnblogs.com/blog5277/p/5920560.html
他说:
选中第一个的话,打完包后是一个jar包
选中第二个的话,打完包后是一个jar包,外带你项目所用的jar包
如果选择了第二个,在下一步的配置中,就会出现两个test.jar。可以看到,上一步骤生成了一个test.jar,并且外边的test.jar还需要再重新创建一个MANIFEST.MF文件
经过测试,即使我创建外边的MANIFEST.MF文件时,把里面的test.jar包打进去,依然会报错:找不到或无法加载主类。
综上所诉, 我又尝试在最开始选择配置的时候,如果选择extract to the target JAR(提取到目标jar包) 这个选项,那么对于我这个测试项目就完全没问题了,生成的test.jar包里包含MANIFEST.MF文件,并且这个包里不会再有其他的jar包了,就没有问题了
但是如果我生成的jar包,需要引用其他的jar包,需要在下一步,Class Path栏里手动输入引入的jar包。
至于这里的classpath如何填写,相当于在之前错误用法时生成的META-INF/MANIFEST.MF文件里所引用的jar包一样。
阅读全文
0 0
- IDEA导出jar包后运行报错 找不到或无法加载主类
- Idea报错: 找不到或无法加载主类
- 使用InteliJ Idea导出jar包运行报错:找不到主清单属性
- maven新建webapp后,运行@Test或print报错 错误: 找不到或无法加载主类
- Java命令行运行报:找不到或无法加载主类
- 使用InteliJ IDEA导出jar包执行报错:找不到主清单属性
- cmd下运行java程序报错:错误: 找不到或无法加载主类
- eclipse 运行java程序报错 “错误: 找不到或无法加载主类 ”
- DOC下运行java工程报错:找不到或无法加载主类 xxx
- "java *.java"报错:找不到或无法加载主类
- java报错: 找不到或无法加载主类
- java命令报错-找不到或无法加载主类
- java报错:找不到或无法加载主类
- java程序控制台编译成功但无法运行,报“找不到或无法加载主类”错误!
- cmd运行java和javac命令报“找不到符号”或“找不到或无法加载主类”问题
- Java中命令行可以编译成功,但不能运行,报找不到或无法加载主类
- IDEA 错误:找不到或无法加载主类
- idea找不到或无法加载主类问题解决
- HDU 2047 阿牛的EOF牛肉串
- 前缀和
- Python安装教程
- Titan数据库快速入门之神的光芒
- HashMap为什么是不安全的?HashTable和ConcurrentHashMap为什么是安全的 ?
- IDEA导出jar包后运行报错 找不到或无法加载主类
- 如何提高SSH的安全性?
- [11.3]日常模拟.3
- LintCode 最长上升连续子序列
- Frida官方手册
- 非线性动力学与混沌
- Nginx+Tomcat搭建高性能负载均衡集群
- 洛谷 1650 赛马 贪心 解题报告
- 基础篇--Unity3D中部分视图的打开方法及一些注释