【问题标题】:is there something like protoc but cross-platform compiler instead是否有类似 protoc 但跨平台编译器的东西
【发布时间】:2013-05-05 08:46:24
【问题描述】:

protoc.exe 是为 Windows 构建的。每个其他发行版,您必须自己编译协议才能使用它。我们真的很想把像 protoc 这样的东西放到我们的项目中,但是在其他操作系统上的任何人都需要做很多工作来设置它。因此,对于这个项目,protoc 基本上已经死了。

是否有另一个库,如 protoc,可以生成具有跨平台编译器的对象/DTO 和编组器/解组器? (Java 编译器会很棒,因为我们可以将它连接到我们的 gradle 构建中)。

谢谢, 院长

【问题讨论】:

    标签: serialization protocol-buffers


    【解决方案1】:

    协议缓冲区应该是跨平台编译器

    Protoc 缓冲区还有其他替代方案,例如 xstreamJacksonGSON。有一组详细的答案Here

    希望这会有所帮助!

    【讨论】:

    • 是的,如果你编译它。就像我在帖子中所说的那样。我不希望开发人员需要编译它!!!过去,当每个人都在 Windows 上时,我使用过 protoc,所以它更容易(在 java 和 C# 之间进行通信)。杰克逊适用于 json,而不是二进制。我知道 bson4jackson 项目,但不确定它有多稳定。我想要类似 protoc 的库,它是非常重要的二进制文件。
    【解决方案2】:
    1. Avro Project 类似于 Protocol Buffers(虽然有它自己的格式)并且有一个 Java 编译器。 Avro 定义可以在 IDL(与 Protocol Buffers 不同)和 JSon 中。一个问题是 Avro 的 Jar 很大(它使用了很多其他的 Jar

    2. 您可以查看 Java-Byte-Code 的编译协议。有几个可用的项目参见cibyllists several cross compilers。结果会很慢而且很大,但它可能会起作用。

    【讨论】:

      【解决方案3】:

      我还没有尝试过它是否有效,假设你可以在 JVM 上运行 protoc。有几种编译器可以在 JVM 上运行 C++。

      Compiling C++ for the JVM

      【讨论】:

        猜你喜欢
        • 2011-01-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-09-29
        • 2016-10-17
        • 2016-08-02
        • 2013-07-30
        相关资源
        最近更新 更多