带有apache公共编解码器jar的运行时错误NoClassDefFoundError

时间:2013-11-11 17:46:45

标签: java jar runtime-error

我有一个java类(SecureHash),它使用apache通用编解码器的功能。我正在用

编译代码
javac -classpath sample/module/commons-codec-1.8.jar  sample/SampleAcn.java sample/module/SampleLoginModule.java sample/module/SecureHash.java 

编译时没有任何错误,但是当初始化SecureHash时,我遇到运行时错误:

java.lang.NoClassDefFoundError: org/apache/commons/codec/DecoderException
    at sample.module.SampleLoginModule.login(SampleLoginModule.java:242)
    .....


 Caused by: java.lang.ClassNotFoundException: org.apache.commons.codec.DecoderException
     at java.net.URLClassLoader$1.run(Unknown Source)
         .....

我无法理解这个错误,因为我将jar包含在常见的编解码器中。

2 个答案:

答案 0 :(得分:1)

您确定在运行类时正确使用CLASSPATH设置吗?您还需要指向sample / module / commons-codec-1.8.jar的位置。

答案 1 :(得分:0)

根据这里的依赖关系你可能还需要commons-logging,但你可能已经有了。{/ p>