在gradle尝试构建项目(使用protobuf)后有一个日志
:app:generateDebugProto FAILED
失败:构建因异常而失败。
出了什么问题:任务执行失败':app:generateDebugProto'。
protoc:stdout :. stderr:/ Users / / app / build / extracted-protos / main:warning:目录不存在。 /用户/ /应用程序/ SRC /调试/原: 警告:目录不存在。
/ Users / / app / build / extracted-protos / debug:warning:directory没有 存在。 / Users / / app / build / extracted-include-protos / debug:warning: 目录不存在。 / Users / / app / src / debug / proto:警告: 目录不存在。 /用户/ /应用程序/生成/提取-PROTOS /调试: 警告:目录不存在。
/ Users / _ / app / build / extracted-include-protos / debug:warning:directory 不存在。缺少输出指令。尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获得更多日志输出。
无法修复。
答案 0 :(得分:0)
Thanks guys for try to help me out, but problem was in my project used to java-nano codegen, so after update to protoc 3.0.0 , this cause a problem, so i read https://github.com/google/protobuf-gradle-plugin and here https://github.com/google/protobuf/releases/tag/v3.0.0, that i decided to use java-lite codegen instead of java-nano. And it's clear now, and errors disappeared.
答案 1 :(得分:0)
另一种替代解决方案是手动创建丢失的目录。
就我而言,MyApp/app/build/extracted-include-protos/main
丢失了,所以我在那里创建了一个“主”文件夹,瞧!错误消失了。
答案 2 :(得分:0)
以下配置对我有用
应用程序级build.gradle文件
classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.10'
项目级别的build.gradle文件
apply plugin: 'com.android.application'
apply plugin: 'com.google.protobuf'
protobuf {
protoc {
artifact = 'com.google.protobuf:protoc:3.8.0'
}
plugins {
javalite {
artifact = 'com.google.protobuf:protoc-gen-javalite:3.0.0'
}
grpc {
artifact = 'io.grpc:protoc-gen-grpc-java:1.0.0-pre2'
}
}
generateProtoTasks {
all().each { task ->
task.builtins {
remove java
}
task.plugins {
javalite { }
grpc {
option 'lite'
}
}
}
}
}