2015-10-11 1 views
0

Привет, я пытаюсь использовать Thrift для проекта в Windows, однако я, похоже, не понимаю, как заставить его работать, и я не очень хорошо понимаю документацию. До сих пор мне удалось создать компилятор бережливости и использовать его для генерации файлов java и C#. Однако, когда дело доходит до их использования в простом проекте, я, похоже, застреваю в той же части. Сейчас я отслеживаю этот учебник:Как добавить зависимости Trrift к проекту C#?

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

Что было весьма полезным, но я до сих пор не понимаю, как добавить библиотеки языка, в учебнике, например, он говорит:

«На этом этапе вам нужно добавить библиотеку бережливости в свой проект. Откройте библиотеку Thrift C# из tarball (должно быть под/lib/csharp) и скомпилируйте ее».

Позже для Клиента он говорит: «Скопируйте библиотеку Thrift Java из tarball (должен быть под/lib/java) в этот проект».

У меня есть обе папки, но я не уверен, что именно я должен делать.

Может ли кто-нибудь указать мне в правильном направлении?

+0

Это довольно широкий, хотя я ответил ниже. Вы должны сузить вопрос до какой-то конкретной проблемы, когда у вас возникают проблемы. – JensG

+0

Разделите проблему на стороне клиента и на стороне сервера. –

+0

Простите, может быть, я не был ясен, я хотел знать, что добавить языковые зависимости в мой проект. Но он теперь решен. Спасибо ou anyway – Girauder

ответ

0

Проблема, с которой я столкнулся, заключалась в добавлении зависимостей к проектам.

Для C# нужно открыть решение бережливости, затем выберите «Release» в конфигурациях сборки и постройте его. Затем под 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 - хорошая библиотека, мой процесс frst-time был очень гладким в C# и Java. Я согласен, я счастлив. (кроме Delphi, но, вероятно, этот язык является древней нишей, не компилируется, потому что «unit socket») –

+0

@JacekCz: Не так уж и древний (мы начали с D2010), но простую причину: как сторонник привязок Delphi, t все версии Delphi на рынке доступны для тестирования. Если бы вы могли предоставить патч или PR для этой проблемы, я был бы рад ее рассмотреть. См. Домашнюю страницу Thrift для [подробности о HowToContribute] (https://thrift.apache.org/docs/HowToContribute) – JensG

+0

@JacekCz: На всякий случай: я серьезно относился к этому. Если у вас есть исправление, касающееся этой проблемы, которую вы по закону разрешили внести, пожалуйста, сделайте это. – JensG