2013-02-20 10 views
6

Sono nuovo di protobuf e stavo cercando di saperne di più sul loro utilizzo. Ho scaricato il protobuf confezionato da here. C'è un file README.txt all'interno della cartella degli esempi dell'archivio che fornisce le istruzioni su come creare 2 applicazioni di esempio. Tuttavia quando seguo le istruzioni per costruire l'applicazione Java:problemi nella creazione delle app di esempio protobuf

make java 

ho un sacco di errori seguita da:

100 errors
make: * [javac_middleman] Error 1

Tutti i 100 errori sembrano essere legati classpath, in quanto questo è un esempio tipico:

com/example/tutorial/AddressBookProtos.java:37: error: package com.google.protobuf does not exist

Qualche idea su come superare questo?

risposta

4

Il problema è che per qualche motivo il jar protobuf non viene aggiunto al classpath durante la compilazione. Per risolvere il problema è necessario aprire examples/Makefile e aggiungere -cp protobuf-java-2.4.1.jar alla fine della riga di java javac AddPerson.java ListPeople.java com/example/tutorial/AddressBookProtos.java.

P.S. Se hai creato i protobuf con Maven, il barattolo si trova a ~/.m2/repository/com/google/protobuf/protobuf-java/2.4.1/protobuf-java-2.4.1.jar (la versione del barattolo potrebbe essere diversa)

+0

Grazie! Strano che non avrebbero preso nota di nulla di tutto questo nei file README ... ma hai appena risolto un problema di molte ore! – klactose

+1

È interessante e un po 'frustrante che funzioni per la mia installazione 2.4.1 su Linux, ma non per la mia installazione 2.5.0rc1 su un mac ... – klactose