2016-06-11 18 views
0

私はJarファイルの実行に問題はありますか?

java -cp otpreq.jar com.otp.req.SendRequest 

とそのエラー - が与える私のjarファイルを実行するには、このコマンドを使用しています:

Error: A JNI error has occurred, please check your installation and try again 
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/httpclient/methods/RequestEntity 
    at java.lang.Class.getDeclaredMethods0(Native Method) 
    at java.lang.Class.privateGetDeclaredMethods(Unknown Source) 
    at java.lang.Class.privateGetMethodRecursive(Unknown Source) 
    at java.lang.Class.getMethod0(Unknown Source) 
    at java.lang.Class.getMethod(Unknown Source) 
    at sun.launcher.LauncherHelper.validateMainClass(Unknown Source) 
    at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source) 
Caused by: java.lang.ClassNotFoundException: org.apache.commons.httpclient.methods.RequestEntity 
    at java.net.URLClassLoader.findClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    ... 7 more 

なぜこのエラーは、私が理解することはできません来ています。

ライブラリとorg/apache/commons/httpclient/methods/RequestEntityがインタフェースであることを確認しました。

答えて

0

すべてのサポートjarをクラスパス(コマンドライン自体)に含める必要があります。

またはotpreq.jar内のすべてのサポートjarをバインドします。

これらのいずれかがこの問題を解決します。

+0

で私は日食でJARファイルとしてプロジェクト全体をエクスポートしています...それはotpreq.jar – Mudit

+0

@Mudit内のすべてのサポートjarファイルを結合しませんソースがエクスポートされている場合、デフォルトでIDEはすべてのjarファイルをバインドします。これらのことを確認してください - 1)otpreq.jarの.classpathファイル2)外部パスからライブラリを追加したかどうかを確認する。3)コマンドラインでクラスパス(-cp)内のすべてのライブラリを指定する。 – Bhuvanwaitz

1

あなたはHTTP-client.jarのを持っていると仮定すると:

java -cp otpreq.jar:http-client.jar com.otp.req.SendRequest 

O.Sがある場合は、Windows、交換してください:で、

注:最新のHTTPClientは、Apacheコモンズに位置していないが、apache http components

関連する問題