Java 如何在NetBeans中正确导入Apache HttpClient?

Java 如何在NetBeans中正确导入Apache HttpClient?,java,http,import,client,Java,Http,Import,Client,我是一个Java新手,我正在尝试导入和使用Http库 我已经下载了源代码和二进制(带有.jar文件)文件,现在我被困在该怎么做上了 我做的第一件事是: 在Netbeans中选择项目>右键单击“属性”>选择库>添加Jar/文件夹>选择.Jar文件 这个过程在我的项目根目录中创建一个名为libraries的文件夹,并将.jar文件导入。但是,当使用HttpClient=new-HttpClient()时在我的项目中,它显示无法使用导入org.apache.http.client.HttpClient

我是一个Java新手,我正在尝试导入和使用Http库

我已经下载了源代码和二进制(带有.jar文件)文件,现在我被困在该怎么做上了

我做的第一件事是: 在Netbeans中选择项目>右键单击“属性”>选择库>添加Jar/文件夹>选择.Jar文件

这个过程在我的项目根目录中创建一个名为libraries的文件夹,并将.jar文件导入。但是,当使用
HttpClient=new-HttpClient()时在我的项目中,它显示无法使用
导入org.apache.http.client.HttpClient.*找到symbol(关于HttpClient)


但是,如果我可以在我的项目根文件夹中手动组织httpclient库,使其看起来像
\org\apache\http\client\httpclient
等等,那么继续阅读是否有好处?

我认为您的
导入
语句中有问题:

import org.apache.http.client.HttpClient.*;
我想应该是这样

import org.apache.http.client.HttpClient;


为什么要管理这样的外部库。您已经在类路径中抛出了库,这就足够了吗?

我认为您的
导入
语句有问题:

import org.apache.http.client.HttpClient.*;
我想应该是这样

import org.apache.http.client.HttpClient;


为什么要管理这样的外部库。您已经在类路径中抛出了库,这就足够了?

Jar文件与源文件和类文件不同,您不需要像.java和.class文件那样按层次结构组织它们,因为Jar文件的内容已经按这种方式组织

我假设您正在netbeans中使用ant项目。在这种情况下,项目中的库节点实际上并不对应于磁盘上的文件夹(与源节点不同)。最方便的做法是在项目根目录下创建一个lib目录,然后将jar文件放在其中。然后,将它们添加到项目中。这样,netbeans将通过jar文件的相对路径引用它们,这意味着您现在可以将整个项目复制到其他地方(可能通过源代码管理),jar引用仍然是正确的


这样做的缺点是一些jar的复制,但这并不是什么大问题。您还必须手动管理依赖项,这可能是一件麻烦事。这样做的好处(至少在netbeans中)是ant项目在netbeans中工作得非常好,maven类型的项目比较新,而且支持得不太好。我还发现ant项目的构建速度更快。

Jar文件与源文件和类文件不同,您不需要像使用.java和.class文件那样分层组织它们,因为Jar文件的内容已经以这种方式组织

我假设您正在netbeans中使用ant项目。在这种情况下,项目中的库节点实际上并不对应于磁盘上的文件夹(与源节点不同)。最方便的做法是在项目根目录下创建一个lib目录,然后将jar文件放在其中。然后,将它们添加到项目中。这样,netbeans将通过jar文件的相对路径引用它们,这意味着您现在可以将整个项目复制到其他地方(可能通过源代码管理),jar引用仍然是正确的

这样做的缺点是一些jar的复制,但这并不是什么大问题。您还必须手动管理依赖项,这可能是一件麻烦事。这样做的好处(至少在netbeans中)是ant项目在netbeans中工作得非常好,maven类型的项目比较新,而且支持得不太好。我还发现ant项目的构建速度更快