开发者社区> 问答> 正文

在linux下运行jar包报错:NoClassDefFoundError

本人在windows下首先把程序打成jar包(带外部第三方jar包),然后把jar包和lib(存放第三方jar包的文件夹) 转存到linux下。 Windows下运行正常,Linux运行的时候报NoClassDefFoundError。
screenshot
以下是我打jar包时用的MANIFEST.MF文件

Manifest-Version: 1.0
Main-Class: com.chenyulin.astSimilarityCalculation/Main
Class-Path: lib\org.eclipse.cdt.core_4.0.3.200802251018.jar lib\org.eclipse.equinox.common_3.6.0.v20110523.jar
java环境变量配置如下

export JAVA_HOME=/usr/java/jdk1.7.0
export CLASS_PATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export CATALINA_HOME=/usr/local/tomcat7037
export PATH=/home/mysql5/bin:$JAVA_HOME/bin:$PATH
export PATH=$PATH:/usr/local/svn/bin

展开
收起
a123456678 2016-06-17 17:02:31 4054 0
1 条回答
写回答
取消 提交回答
  • 如果你要使用环境变量来指定classpath, 那应该是 CLASSPATH 而不是 CLASS_PATH

    或者可以在java命令中指定 classpath.

    如果是 jdk7 以下的, 需要一个一个的指定jar:

    java -classpath lib/foo.jar:lib/bar.jar
    如果是 jdk7 或以上的, 可以更加简单:

    java -classpath lib/*.jar

    2019-07-17 19:43:09
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Alibaba Cloud Linux 3 发布 立即下载
ECS系统指南之Linux系统诊断 立即下载
ECS运维指南 之 Linux系统诊断 立即下载