2015-10-11 69 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

相关问题