Как использовать структуру, определенную в файле Thrift, используя ключевое слово «include» - PullRequest
5 голосов
/ 08 декабря 2011

Я новичок в Thrift.У меня следующий вопрос: Предположим, что я определил структуру в файле "Ex1.thrift" следующим образом:

namespace java tut1
struct Address {
 1:string nameStreet,
 2:i32 idHouse
}

Я хочу использовать struct Address в файле "Ex2.thrift", как я могу это сделать?Я пробовал так, но Thrift-компилятор не работает:

include "Ex1.thrift"
namespace java tut2
struct Student {
 1:string name,
 2:i32 age,
 3:Address add
}

service ExampleService {
 list<Student> getListStudent()
}

Большое спасибо за любой ответ.

1 Ответ

13 голосов
/ 11 декабря 2011

Вы должны предоставить префикс Ex1 при использовании адреса в Ex2.thrift

    include "Ex1.thrift"
    namespace java tut2
    struct Student {
    1:string name,
    2:i32 age,
    3:Ex1.Address add
    }

    service ExampleService {
    list<Student> getListStudent()
    }

Это работает в Thrift 0.8.0

...