我正在尝试将 Google 协议缓冲区用于 Java(我是 Java 新手,只是在尝试)。
首先,我使用的是 OSX,并且我已经使用brew install protobuf
命令安装了协议缓冲区。
protoc 命令工作正常。
我是MyProtocol.java
由 protoc 生成的。
我已经安装了 Java 的协议缓冲区作为它的指令(README.txt)。
mvn install
命令创建了.m2
目录,我可以protobuf-java-2.4.1.jar
在目录中的某处找到文件。
我写了简单的测试 Java 代码只是导入MyProtocol.java
它抱怨找不到包com.google.protobuf
。
所以,我刚刚制作了 jar 文件mvn package
并将其目录添加为 CLASSPATH 并且编译良好。
javac -classpath <protobuf-dir>/jara/target/classes Test.java ./com/example/tutorial/AddressBookProtos.java
如果我使用 maven 的存储库目录 ( ~/.m2/repository
),它会再次抱怨。
如果我安装软件包,maven 不会为我制作 CLASSPATH 吗?如果没有,我如何使用 maven 安装的包来编译我的代码?