每次我尝试构建应用程序停靠器时,都会收到以下错误:
异常:无法运行程序“/home/gradle/.gradle/caches/modules-2/files-2.1/com.google.protobuf/protoc/3.20.3/898c37cfe230a987c908cff24f04a58d320578f1/protoc-3.20.3-linux-x86_64.exe”:错误=2,没有这样的文件或目录
在构建之前,我尝试通过以下命令将协议下载并解压缩到我的dockerfile中:
RUN curl -LO https://github.com/protocolbuffers/protobuf/releases/download/v3.20.3/protoc-3.20.3-linux-x86_64.zip
RUN unzip -q protoc-3.20.3-linux-x86_64.zip
错误仍然存在。
我的“build.gradle”文件中的Protobuf部分如下所示:
protobuf {
protoc {
artifact = "com.google.protobuf:protoc:3.20.3"
}
plugins {
id("grpc") {
artifact = "io.grpc:protoc-gen-grpc-java:1.46.0"
}
id("grpckt") {
artifact = "io.grpc:protoc-gen-grpc-kotlin:0.2.0:jdk7@jar"
}
}
generateProtoTasks {
ofSourceSet("main").forEach {
it.plugins {
// Apply the "grpc" plugin whose spec is defined above, without options.
id("grpc")
id("grpckt")
}
}
}
}
1条答案
按热度按时间vmdwslir1#
正如我可以在this github issue中找到的那样,我可以通过在构建步骤之前将
gcompact
包添加到Dockerfile中来解决它。现在我的Docker文件如下: