我正在尝试在我的Android应用程序中使用Protobuf。 为此,我在gradle.build文件中添加了以下行:
buildscript {
repositories {
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath "gradle.plugin.com.google.protobuf:protobuf-gradle-plugin:0.5.0"
}
}
apply plugin: "com.google.protobuf"
sourceSets {
main {
proto {
// In addition to the default 'src/main/proto'
srcDir '../../../Libs/Protocol'
}
}
}
protobuf {
protoc {
path = '/usr/local/bin/protoc'
}
}
问题是我在gradle构建时遇到错误。它说:
Error:Execution failed for task ':app:generateDebugProto'.
> protoc: stdout: . stderr: protoc-gen-javanano: program not found or is not executable
--javanano_out: protoc-gen-javanano: Plugin failed with status code 1.
你能帮我解决这个问题吗? 我不知道如何解决它。
提前谢谢!
答案 0 :(得分:1)
这意味着您使用的protoc
版本不支持javanano。一个简单的解决方法是在Maven Central上使用预编译的protoc
,将以下内容添加到build.gradle
(正如protobuf gradle插件的documentation所示):
protobuf {
protoc {
artifact = 'com.google.protobuf:protoc:3.0.0-alpha-3'
}
}