我想在 Android 上写一个 Grpc 客户端。我按照这个教程
这是我的外部build.gradle
文件:
apply plugin: 'java'
apply plugin: 'com.google.protobuf'
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.1'
classpath "com.google.protobuf:protobuf-gradle-plugin:0.8.0"
}
}
protobuf {
protoc {
artifact = "com.google.protobuf:protoc:3.2.0"
}
plugins {
grpc {
artifact = 'io.grpc:protoc-gen-grpc-java:1.3.0'
}
}
generateProtoTasks {
all()*.plugins {
grpc {}
}
}
}
allprojects {
repositories {
jcenter()
mavenLocal()
}
}
这是我的内部文件build.gradle
文件:
dependencies {
compile 'com.android.support:appcompat-v7:23.+'
// You need to build grpc-java to obtain these libraries below.
compile 'io.grpc:grpc-okhttp:1.3.0' // CURRENT_GRPC_VERSION
compile 'io.grpc:grpc-protobuf-lite:1.3.0' // CURRENT_GRPC_VERSION
compile 'io.grpc:grpc-stub:1.3.0' // CURRENT_GRPC_VERSION
compile 'javax.annotation:javax.annotation-api:1.2'
}
当我尝试构建项目时,我总是遇到错误:
Error:(14, 15) error: duplicate class: io.grpc.routeguideexample.Feature
Error:(13, 15) error: duplicate class: io.grpc.routeguideexample.FeatureDatabase
// ...
With Feature
... 是我在 protoc 文件中定义的类。请帮我弄清楚我的代码有什么问题。
谢谢