【问题标题】:Dependencies of Apache HttpComponents for async and non-async requestsApache HttpComponents 对异步和非异步请求的依赖关系
【发布时间】:2016-12-02 10:20:50
【问题描述】:

在我的应用程序中,我使用 Apache HttpClient 进行同步请求。我的 Maven 依赖项如下所示:

        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
            <version>4.5.2</version>
        </dependency>

但现在我需要能够发出异步请求。

我的一般问题是 - 如果我想使用 Apache Http 组件发出异步和非异步请求,我的 pom.xml 应该如何看待?实际上有很多问题让我有点困惑。

更具体一点:

  • 异步客户端是单独的依赖吗?据我了解 - 是的,但是在将此依赖项添加到我的 pom.xml 之后:

        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpasyncclient</artifactId>
            <version>4.1.2</version>
        </dependency>
    

    我在导入 HttpAsyncClients 类时遇到问题。

  • 这两个库是否使用相同的 http-core 依赖项?可能我应该对http-core 使用排除?

  • 还有其他方法可以使用 Apache HttpComponents 进行异步和非异步请求吗?

  • 在一个项目中混合使用两个库是否合法?

【问题讨论】:

    标签: java maven apache-httpcomponents


    【解决方案1】:

    我建议只保留httpasyncclient,您可以随时与它同步处理请求。因此,如果可能的话,只需将您的代码重构为httpasyncclient。如果没有,您可以尝试在http-core-nio 上添加手动依赖,这可能会解决您的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-17
      • 1970-01-01
      • 1970-01-01
      • 2015-12-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多