
项目中需要用到一些第三方的 jar 包,在 IEDA 里面运行没有问题。
然后按照 http://bglmmz.iteye.com/blog/2058785 里面的做法, 打包成了 jar 包,在 Windows 下运行没有问题。
但是将 lib 文件夹和 jar 包上传到 Linux 服务器时,就会报错:
Exception in thread "main" java.lang.NoClassDefFoundError.
Caused by: java.lang.ClassNotFoundException: weka.core.SerializationHelper
看上去是因为入口程序没有找到第三方 jar 包的原因。
但是为什么呀,大家有没有好的解决思路和方法?
谢谢!
1 ming2050 2016-01-24 18:13:11 +08:00 via Android 问题已经很明确了。。。。 |
2 ming2050 2016-01-24 18:13:58 +08:00 via Android weka 这个包没打进去 |
3 wucao219101 2016-01-24 18:24:26 +08:00 via iPad 解压一下看一看包中有没有依赖包在,很可能没打进去。另外更建议用 Maven 插件打 jar 包: http://xxgblog.com/2015/08/07/maven-create-executable-jar/ |
4 publicAdmin 2016-01-24 18:46:54 +08:00 linux 下有个 jdk 的包和 windows 下不一致,需要手动创建软链接让环境变量找到,并识别. |
5 reeco 2016-01-24 19:12:53 +08:00 用 maven 将全部依赖打成一个包就好了 |
6 xcaspar 2016-01-24 19:14:59 +08:00 java -cp . -jar xxx.jar 试试 |
7 north521 2016-01-24 20:19:33 +08:00 fat jar |