4

HttpClientコードを使用するコードをテストするための簡単なEclipseプロジェクトを作成しようとしています。NoClassDefFoundError単純なApache HttpClient Eclipseプロジェクト

Junit4テストケース(以下のコード)を追加しました。httpclient-4.1.3.jarをMaven Central hereから手動でダウンロードしたEclipseプロジェクトに追加し、jarファイルをJavaビルドパスに追加しました。単に

java.lang.NoClassDefFoundError: org/apache/http/params/HttpParams at HttpClientDemo.test(HttpClientDemo.java:13)

HttpClientDemoされています:テストを実行すると

、私は次のエラーを取得する

import org.apache.http.client.HttpClient; 
import org.apache.http.impl.client.DefaultHttpClient; 
import org.junit.Test; 


public class HttpClientDemo { 
    @Test public void test() { 
     HttpClient httpclient = new DefaultHttpClient(); 
    } 
} 

は、なぜ私はこのエラーを取得していますか?

答えて

9

バージョン4から、HttpClientは、コア、適切なクライアント、およびAsyncClientというHttpComponentsの3つの部分に分かれています。 HttpParamsクラスはHttpComponents Coreの一部になっていますので、単純な例を正常にコンパイルするためには、そのコンポーネント(具体的にはhttpcore-4.1.3.jarという名前)の特定のJARも必要です。

+0

ありがとうございます!しかし、私は[HttpComponents core "part"](http://search.maven.org/#browse-1-1669891889)のJOMは表示されず、POMファイルのみが表示されます。私はmavenを使用していません(m2EclipseをインストールしてMavenサポートを取得しましたが、学習曲線はかなり急峻です)。どのHttpComponents JARが見つからないかも知っていますか? –

+1

@glenviewjeff私はMavenを使用していませんが、http://hc.apache.org/downloads.cgiのページから興味があるかもしれないいくつかのHttpCoreバイナリのダウンロードを見ています。 –

+0

Jarsは[ApacheのHttpComponentsサイト](http://hc.apache.org/downloads.cgi)から圧縮された "バイナリ"ダウンロードに入っています。ああ、あなたは私にそれを打つと思う。それはジップの内部を見るのを邪魔しないために多くの無駄な努力でした。私は迷ってしまった「バイナリ」に私が何を考えているのか分からない。 –