2011-01-13 3 views
4

Ich bin nicht wirklich sicher, wo ich anfangen soll.Java & Google Protocol Buffers: Hat jemand ein einfaches Beispiel, um damit anzufangen?

Wie einige Websites, die ich sah, wollte ich Maven installieren, und eine Menge Dinge mit dem Kopieren von Dateien in Systemverzeichnisse, und Hinzufügen dieser Verzeichnisse zu $ ​​Pfad (was ich hasse tun, BTW, die Entwickler sollten einfach schreiben ein Installateur). Aber wie auch immer, die Bibliothek muss mit meiner App gepackt werden, also bin ich nicht daran interessiert, Protokollpuffer zu installieren ... Ich attackiere es einfach in meinem Java-Projekt in Eclipse. (Wie das Hinzufügen Gläser auf den Build-Pfad.)

All Tutorials ihr kennen?

+0

Wunsch konvertiert ich mit Details (eine vorhandene Antwort auf richtige Richtung ist Punkt) helfen könnte. Wenn Sie jedoch PB nicht verwenden müssen, können Sie Alternativen in Betracht ziehen, die einfacher zu verwenden sind (wie JSON oder Hessian). – StaxMan

Antwort

4

Sie benötigen keine Installation auf Produktions Boxen zu tun. Sie müssen es auf der Build-Box installieren, damit Sie Java-Anbindung für die .proto Datei schreiben Sie erstellen können. Dies ähnelt der Art, wie Sie Code aus wsdl oder xsd generieren. Sobald Sie das der generierte Code (das hilft in serialize/deserialize der binären Nachricht), können Sie es als ein Glas bündeln und es wie jede andere Glas-Bibliothek verwenden. Here is a small tutorial, um loszulegen.

Einfach mehr Klarheit hinzufügen

Protobuf = XML Schema 
.proto  = xsd 
protoc.exe = xjc 

Der Ablauf ist wie folgt

  1. eine .proto-Datei erstellen, die Meta-Informationen zur Verfügung gestellt
  2. die .proto durch die protoc.exe für sie laufen zu generieren Code
  3. Bundle den generierten Code in eine jAR-Datei (oder einfach importieren alle, dass Code in Ihrem Quellbaum)
  4. Fügen Sie die JAR-Datei-Pfad für ser/deser

Mit Maven vereinfacht die 2, 3 und 4

+0

* "Die Verwendung von Maven vereinfacht 2,3 und 4" * ... Aber zu welchem ​​Preis? Der, der zu der Spüle Ihrer Küche passt? ;) Ich bin mir ziemlich sicher, dass es andere Wege gibt, 2,3 und 4 zu vereinfachen. Gradle ... * hust * * hust * ... Gradle. – SyntaxT3rr0r

+1

@ SyntaxT3rr0r: Ich vergleiche Maven nicht mit anderen Tools. das ist nicht die Absicht. Ich antworte nur seine Frage, wo er ausdrücklich Maven angegeben –

+0

Es ist ein Eclipse-Plugin, das Proto Sachen kompilieren. nicht sicher, wie es noch funktioniert, aber hier http://code.google.com/p/protoclipse/. – NullVoxPopuli

Verwandte Themen