簡體   English   中英

如何將Apach AVRO IDL編譯為Java?

[英]How to compile Apach AVRO IDL into java?

我有一個Apache AVRO IDL,它定義了我想在Java客戶端和用Python編寫的服務器之間使用的協議。

@namespace("myproto.proto")

protocol myproto 
{

  enum Status
  {
    STATUS_OK,
    STATUS_ERROR
  }

  record GameList
  {
    array<string> games;
  }

  void somefunc(int arg);
}

對於Python,我使用以下代碼:

AVROTOOLS=$(TOOLS_PATH)/avro-tools-1.7.4.jar
java -jar $(AVROTOOLS) idl fairunfair.avdl fairunfair.avpr

如何將IDL編譯為Java? 如果可能,不使用Maven。

您可以使用avro工具從IDL生成JSON模式:

java -jar avro-tools-1.7.4.jar idl /path/to/idl

然后像往常一樣將模式編譯成Java:

java -jar avro-tools-1.7.4.jar compile schema /path/to/schema .

我認為沒有任何方法可以從IDL直接編譯為Java。 avro-tools幫助菜單中沒有顯示此類選項。

暫無
暫無

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

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