簡體   English   中英

RestEasy客戶端所需的罐子

[英]Required jars for RestEasy Client

我需要提供一個java REST客戶端,它應該包含一個包中所有必需的jar。 我選擇RestEasy作為REST框架,因為服務器應用程序是在JBoss上完成的。

到目前為止,我發現的幾乎所有示例都使用應用程序容器環境,其中提供了這些庫,因此在編譯期間只需要Java EE API或使用Maven構建,因此依賴項會自動解決,這可能是一個好主意,當前的標准方法,但由於項目相關的原因,我需要在lib文件夾中的jar,並能夠在構建期間包含一個可執行jar。

所以我的問題是,哪個罐子有必要建立一個可以做類似的簡單客戶端:

ResteasyClient client = new ResteasyClientBuilder().build();
ResteasyWebTarget target = client.target(myURL).queryParam("param",
                "value");
Builder builder = target.request(MediaType.APPLICATION_JSON).header("user", "abc");
Invocation invocation = builder.buildGet();
MyResponseObject response = invocation.invoke(MyResponseObject .class);

最簡單的方法是使用Maven 我這樣說的原因是,你想要的主要工件是resteasy-client工件,但是這個工件依賴於其他工件。 如果我創建一個新的Maven項目,只添加此依賴項

<dependency>
    <groupId>org.jboss.resteasy</groupId>
    <artifactId>resteasy-client</artifactId>
    <version>3.0.9.Final</version>
</dependency>

該項目將引入所有這些工件

在此輸入圖像描述

但如果您不使用Maven,可以在此處下載整個resteasy軟件包。 它提供了比你需要的更多,但它將包含你在上面的圖片中看到的所有罐子,以及其他一些好東西,如用戶指南,示例等。 根據上圖,只需獲得您需要的罐子。 確保下載最終版本。 當你解壓縮它時,所有的jar都應該在lib目錄中。

我可能會提到的另一件事是,為了將JSON表示解組到Java類中,您可能還需要resteasy-jackson2-provider 如上所述,您將看到這些工件

在此輸入圖像描述

同樣,這些也包含在下載中。 這在大多數情況下都適用,如果您使用JAXB注釋(可以返回XML或JSON),因為插入了工件jackson-module-jaxb-annotations ,但該工件不支持所有JAXB注釋,因此您可能如果需要,需要拉入resteasy-jaxb-provider 就像我說的那樣,只有jackson2提供商可能就足夠了。 但是,在需要的JAXB的prodiver的情況下,這里是什么樣子

在此輸入圖像描述

再次,包含在下載中

如果在項目中使用maven,則可以鍵入dependency:tree以查看依賴項的層次結構。 RestEasy使用的庫將列在樹中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM