2015-10-11 100 views
0

嗨我想使用Thrift在Windows上的項目,但我似乎不明白如何讓它的工作,我不明白所提供的文檔很好。到目前爲止,我設法創建了thrift編譯器並使用它來生成java和c#文件。但是,當涉及到在一個簡單的項目中使用它們時,我似乎陷入了同一部分。現在,我下面這個教程:如何將Thrift依賴關係添加到C#項目中?

http://blog.rfaisal.com/2013/10/09/getting-started-with-apache-thrift/

這已經相當有用的,但是,我還是不明白如何添加語言庫,在本教程中,例如,他說:

「此時,您需要將thrift庫添加到您的項目中,從tarball中打開Thrift C#庫(應位於/ lib/csharp下)並編譯它。」

後來爲客戶端他說: 「從tarball(應該在/ lib/java下)拷貝Thrift Java庫到這個項目。」

我有兩個文件夾,但我不確定我到底該做什麼。

難道有人指着我正確的方向嗎?

+0

這是相當廣泛的,即使我回答下面。你應該把問題縮小到遇到麻煩的某個特定問題。 – JensG

+0

將您的問題分爲客戶端和服務器端。 –

+0

對不起,也許我不清楚,我想知道在我的項目中添加語言依賴項。但現在已經解決了。無論如何感謝ou – Girauder

回答

0

我遇到的問題是將相關性添加到項目中。

對於c#需要打開節儉解決方案,然後選擇構建配置下的「發佈」並構建它。然後在bin/Release下找到需要在項目中引用的.dll文件。

對於Java,你需要整個組織文件夾添加到您的項目,那麼你需要HttpClient的-version.jar和的HttpCore-version.jar添加到構建路徑

+0

那麼,我該怎麼說呢......那是一個普通的C#問題。當然你需要引用你打算使用的東西。 – JensG

+0

是的,但我不知道我需要使用什麼,那是我的問題 – Girauder

0

有一個關於Apache Thrift web site的教程,這是一個很好的開始。編譯器預編譯爲Windows,所以理論上不需要自己編譯它,但也不是那麼難。最後,這是一個細節。

關於C#的庫,您有兩種選擇。推薦的方法是使用/lib/csharp/src下的項目文件編譯程序集。另一種選擇是簡單地將所有文件包含到項目中。

當然,你只使用你需要的語言。如果只需要C#,請忽略Java。 Thrift在多個平臺上支持約20種以上的語言,您可以隨意選擇任何需要的內容並忽略其餘部分。

與生成的文件相同:將其包括到項目中或創建程序集,就像在lib/csharp/test/ThriftTest下完成測試一樣。

的基本工作流程是所有語言的相同:

  • 創建一個IDL文件來表示你的API合同
  • 調用節儉編譯器生成的代碼
  • 放在一起所需的協議/傳輸堆棧
  • 割肉出局客戶端和/或服務器代碼
  • 創造一切
  • 快樂。
+0

Thrift是一個不錯的庫,我的第一次過程在C#和Java中非常流暢。我同意我很高興。 (除了德爾福,但可能這種語言是古老的小衆,不編譯,因爲「單位插座」) –

+0

@JacekCz:不是那麼古老(我們從D2010開始),但一個簡單的理由:作爲Delphi綁定的維護者,沒有市場上所有的德爾福版本可供測試。如果你能爲這個問題提供補丁或公關,我很樂意審查它。請參閱Thrift主頁[有關HowToContribute的詳細信息](https://thrift.apache.org/docs/HowToContribute) – JensG

+0

@JacekCz:以防萬一:我對此很認真。如果您有補丁解決您在法律上允許貢獻的問題,請執行此操作。 – JensG

相關問題