Protobuf を使用する必要がある Java で Play フレームワーク (SBT ビルド ツールを使用) を使用しています。だから私はxxx.proto
ファイルを持っています。バイナリ プロトコル コンパイラを取得し、クラス パスに追加しました。なるほど~
protoc --version
libprotoc 3.1.0
を使用して xxx.proto ファイルをコンパイルしたため、xxx.java ファイル
protoc -I=$SRC_DIR --java_out=$DST_DIR $SRC_DIR/xxx.proto
が生成されました。
この xxx.java ファイル (sbt ビルド ツールを使用したプロジェクト) をコンパイルしているとき
[error] /my_project/app/helpers/xxx.java:7: package com.google.protobuf does not exist
[error] com.google.protobuf.ExtensionRegistryLite
[error] /my_project/app/helpers/xxx.java:11: package com.google.protobuf does not exist
[error] com.google.protobuf.ExtensionRegistry
[error] /my_project/app/helpers/xxx.java:6182: package com.google.protobuf.Descriptors does not exist
[error] com.google.protobuf.Descriptors.Descriptor
[error] /my_project/app/helpers/xxx.java:6185: package com.google.protobuf.GeneratedMessageV3 does not exist
[error] com.google.protobuf.GeneratedMessageV3.FieldAccessorTable`
インストールしたライブラリに表示されますcom.google.protobuf
-jarがあります。
私xxx.proto
のルックスは次の -
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: xxx.proto
public final class xxx {
private xxx() {}
public static void registerAllExtensions(
com.google.protobuf.ExtensionRegistryLite registry) {
}
public static void registerAllExtensions(
com.google.protobuf.ExtensionRegistry registry) {
registerAllExtensions(
(com.google.protobuf.ExtensionRegistryLite) registry);
}
......
ファイルの生成中に見逃したものはありxxx.java
ますか? これらのコンパイル エラーを修正するにはどうすればよいですか?