java -jar 执行jar包出现 java.lang.NoClassDefFoundError
来源:互联网 发布:淘宝一件代发靠谱吗 编辑:程序博客网 时间:2024/06/10 19:29
http://www.cnblogs.com/xuzimian/p/7599304.html
我用idea工具将自己开发java程序打成一个可执行的jar包,当然用eclipse或者直接用jar命令行都无所谓,本质都是将程序归档到一个压缩包,并附带一个说明清单文件。
打jar的操作其实很简单,网上很多资料,即使出错工具也都会有提示,而执行打包好的jar就很容易出现一些小问题,这些小问题往往就是jar包中清单文件书写一些小细节引起的。
比如我在标题提到的执行jar包抛出 java.lang.NoClassDefFoundError 异常,找不到某某包下的类,这时候不用看,就是清单文件中的classpath书写的问题:
classpath有如下容易忽略的问题:
(1) 不能有空行和空格的地方 第一行不可以是空行( 第一行的行前不可以有空行),行与行之间不能有空行,第行的行尾不可以有空格
(2) 一定要有空行的地方 最后一行得是空行(在输完你的内容后加一个回车就OK)
(3) 一定有空格的地方
等等。这些其实用第三方工具(非jdk自带)都不会有问题,而本人则遇到一个问题,是想在这里特别说明的,本人参照网上帖子,用idea打jar包,第三方的jar通通放入lib文件夹中,这时候,清单文件的classpath所对应的jar包就必须加上“lib\”前缀,而问题就在这里,他写成lib\xxx-xx.jar执行jar包时候就出现了标题中java.lang.NoClassDefFoundError异常。本人反复和对打包清单文件,怼了一晚上才爬出坑,需要用"/"符号 ,所classpath应该是lib/xxx-xx.jar
- java -jar 执行jar包出现 java.lang.NoClassDefFoundError
- Android 导入 Jar 包 出现: java.lang.NoclassDefFoundError 解决办法
- Web项目导入jar包 出现java.lang.NoClassDefFoundError错误
- 安卓使用java mail jar包出现java.lang.NoClassDefFoundError错误解决方案
- [Android 笔记] ADT v17+读取工程写 lib 下jar 包出现 java.lang.NoClassDefFoundError 问题
- Android使用KSOAP2等第三方jar包调用WebService出现java.lang.NoClassDefFoundError.的解决办法
- Android导入自定义的jar包时出现 E/AndroidRuntime(486): java.lang.NoClassDefFoundError错误
- Android中引入第三方Jar包运行时出现java.lang.NoClassDefFoundError
- Maven项目引用本地jar包,编译后出现java.lang.NoClassDefFoundError
- 遇见java.lang.NoClassDefFoundError错误,找不到jar包类
- Android中java.lang.NoClassDefFoundError自定义jar包导入问题。
- 使用jason需要导入的jar包-java.lang.NoClassDefFoundError
- Android中java.lang.NoClassDefFoundError自定义jar包导入问题。
- 导入第3方jar包问题:java .lang.NoClassDefFoundError
- 导入第三方jar包时报错-----java.lang.NoClassDefFoundError。。。
- 引入jar包但是报错java.lang.NoClassDefFoundError
- android 添加外部jar java.lang.NoClassDefFoundError
- android 导入jar java.lang.NoClassDefFoundError
- NOIP2012 同余方程
- Netty 解决粘包拆包问题
- JS处理字符串为首字母大写
- Spline算法:输入几个点,输出一条曲线的点。
- vue.js之组件
- java -jar 执行jar包出现 java.lang.NoClassDefFoundError
- 301、404、200、304等HTTP状态
- Java23种设计模式——建造者模式
- Shell脚本中判断输入变量或者参数是否为空的方法
- 小程序 淘票票+node.js模拟本地数据
- 浏览器使用代理
- 1018. 锤子剪刀布 (20)
- PAT (Basic Level) Practise (中文)1001
- Js判断IE浏览器版本11、10、9、8、7、6.....