使用简单的Apache HttpClient Eclipse项目的NoClassDefFoundError

Jef*_*rod 4 java eclipse httpclient noclassdeffounderror apache-commons

我正在尝试创建一个简单的Eclipse项目来测试使用HttpClient代码的代码.

我在Eclipse中创建一个简单的Java项目,增加了Junit4测试案例(下面的代码).我加入了httpclient-4.1.3.jar到我手动从Maven的中央下载Eclipse项目在这里,并添加了罐子的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();
   }
}
Run Code Online (Sandbox Code Playgroud)

为什么我收到此错误?

Giu*_*lli 9

从版本4开始,HttpClient分为三部分,分别在HttpComponents名字:Core,正确的Client和AsyncClient下.在HttpParams类现在是HttpComponents核心的一部分,所以你还需要该组件(据说命名的具体JAR httpcore-4.1.3.jar)为了成功编译简单的例子.