Quarkus 休息客户端不遵守 -Dhttp.proxyHost -Dhttp.proxyPort 代理选项

Quarkus rest client not respecting -Dhttp.proxyHost -Dhttp.proxyPort proxy options

我想指定我的 Quarkus 应用程序 (v2.8.3.Final) 使用 HTTP 代理 而不更改任何代码

为了尝试这个,我将 -Dhttp.proxyHost-Dhttp.proxyPort 选项传递给终端,如下所示:

./mvnw quarkus:dev -Dquarkus.http.host=0.0.0.0 -Dquarkus.http.port=9000 -Ddebug=9001 -Dhttp.proxyHost=localhost -Dhttp.proxyPort=6969

比较工作的 quarkus 应用程序和有问题的应用程序

为了比较工作中的 quarkus 应用程序 (A) 和另一个 (B) 我已经实现了一个发送请求的资源至 http://google.com

import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;
import javax.ws.rs.core.MediaType;

   .
   .
   .

    @GET
    @Path("/google")
    @Produces(MediaType.TEXT_PLAIN)
    public String google() {
        Client client = ClientBuilder.newClient();
        return client.target("http://www.google.com")
                     .request(MediaType.TEXT_PLAIN)
                     .get()
                     .readEntity(String.class);
    }

并且我已确保 Quarkus 版本相同。这是来自 pom.xml

minimal 片段
  <properties>
    <quarkus.platform.artifact-id>quarkus-bom</quarkus.platform.artifact-id>
    <quarkus.platform.group-id>io.quarkus.platform</quarkus.platform.group-id>
    <quarkus.platform.version>2.8.3.Final</quarkus.platform.version>
  </properties>

Application A 成功将其请求传递给代理服务器,而 B 不会。比较它们的 pom.xml 文件和 application.properties 文件时,这两个应用程序非常相似。我正在努力指出相关差异。我想至少得到一些关于我可以在哪里解决这个问题的指示。

除了通过 -Dhttp.proxyHost-Dhttp.proxyPort 之外我还尝试过的其他事情:

系统信息

Quarkus 带有两个 REST 客户端,旧的 classic version and the newer reactive one。反应式客户端具有代理支持;经典不做广告。尝试切换到反应式客户端。

(从评论中复制)