我有问题
import java.io.File;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.ResponseHandler;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.mime.MultipartEntity;
import org.apache.http.entity.mime.content.FileBody;
import org.apache.http.entity.mime.content.StringBody;
import org.apache.http.impl.client.BasicResponseHandler;
import org.apache.http.impl.client.DefaultHttpClient;
public class qq {
public static void main(String[] args) throws UnsupportedEncodingException, IOException {
HttpClient httpclient = new DefaultHttpClient();
// HttpPost httppost = new HttpPost("http://192.168.0.102/uploadtest/upload_photo");
System.out.println("aaaa");
}
}
文件清单.mf:
清单版本:1.0 主类:qq
操作系统 debian 8 Java版本: Java 版本“1.8.0_111” Java(TM) SE 运行时环境(build 1.8.0_111-b14) Java HotSpot(TM) 64 位服务器 VM(构建 25.111-b14,混合模式)
和:
javac -cp ./lib/httpclient-4.2.5.jar:./lib/httpcore-4.4.5.jar:./lib/httpmime-4.2.5.jar:./lib/commons-logging-1.2。 jar qq.java jar cfm test.jar 清单.mf qq.class
没问题,没有错误,退出代码 - 0.
我试试:
# java -jar 测试.jar 线程“main”中的异常 java.lang.NoClassDefFoundError: org/apache/http/impl/client/DefaultHttpClient 在qq.main(qq.java:18) 引起:java.lang.ClassNotFoundException:org.apache.http.impl.client.DefaultHttpClient 在 java.net.URLClassLoader.findClass(URLClassLoader.java:381) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:424) 在 sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 1 更多
如何解决这个问题?
我建议你使用 Maven 或 Gradle 因为 depandances 是自动加载的。
专家:
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.1</version>
</dependency>
摇篮:
compile group: 'org.apache.httpcomponents', name: 'httpclient', version: '4.5.1'