protocol-buffers - OS X Maverick 上不存在包 com.google.protobuf

标签 protocol-buffers osx-mavericks

我在 OS X Mavericks 上并开始学习 protobuf,我从 https://code.google.com/p/protobuf/downloads/list 下载示例

我能够成功地从 proto 创建 .java 文件,但是在使用编译现有的 java 代码时

make java,我收到以下错误

com/example/tutorial/AddressBookProtos.java:91: package com.google.protobuf does not exist
      com.google.protobuf.GeneratedMessage
                         ^
com/example/tutorial/AddressBookProtos.java:12: package com.google.protobuf does not exist
      extends com.google.protobuf.MessageOrBuilder {
                                 ^
com/example/tutorial/AddressBookProtos.java:9: package com.google.protobuf does not exist
      com.google.protobuf.ExtensionRegistry registry) {
                         ^
com/example/tutorial/AddressBookProtos.java:2495: package com.google.protobuf.Descriptors does not exist
  private static com.google.protobuf.Descriptors.Descriptor
                                                ^
com/example/tutorial/AddressBookProtos.java:2498: package com.google.protobuf.GeneratedMessage does not exist
    com.google.protobuf.GeneratedMessage.FieldAccessorTable
....
....

对此有任何解决方案吗?

谢谢

最佳答案

遇到了同样的问题,终于让它工作了。这是我在 OSX 10.9 上所做的(使用 2.6.0 版):

  • 无所不能java/README.txt告诉你
  • 如果 maven package成功,你会得到一个 protobuf-java-2.6.0.jartarget文件夹,对我来说是 /Users/laike9m/Dev/protobuf-2.6.0/java/target/protobuf-java-2.6.0.jar .
  • 创建 ~/Library/Java/Extensions文件夹,注意:这是特定于平台的操作,对于 OSX 以外的操作系统,它应该是 $JAVA_HOME/lib/ext
  • 复制 protobuf-java-2.6.0.jar~/Library/Java/Extensions

  • 然后你应该可以运行 make java成功地。

    关于protocol-buffers - OS X Maverick 上不存在包 com.google.protobuf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20181852/

    相关文章:

    java - Mavericks OS X 上的几个应用程序请求安装 Java 6 SE 运行时,但已经有 Java 7

    macos - OSX Mavericks 升级后 Vagrant 同步文件夹不工作

    opencv - caffe安装报错 linker error lib/libcaffe.dylib Error and src/caffe/CMakeFiles/caffe.dir/all Error

    serialization - 为什么protocol buffer编译器生成的消息类都是不可变的?

    sbt - scalapb如何从测试目录中的protobuf文件生成代码?

    python - 如何访问 protobufs 中的 python 枚举

    c++ - 如何使用基于范围的 for 循环在 C++ 中迭代可变的重复 Proto 字段?

    python - apache-beam 从 GCS 桶的多个文件夹中读取多个文件并加载它 bigquery python

    apache - 在 Mac OS X 10.9 (Mavericks) 中启动内置 Apache 服务器

    使用 Mavericks OS 升级 MAC 后,Openfire 服务器未启动