3

I'm trying to follow along this blog post, https://redbyte.eu/en/blog/calling-java-from-go-using-grpc/, in this repository, https://github.com/khpeek/pdf-parser. After running ./gradlew build, the project has the following structure:

. ├── build │   ├── classes │   │   └── java │   │   └── main │   ├── extracted-include-protos │   │   └── main │   │   └── google │   │   └── protobuf │   │   ├── any.proto │   │   ├── api.proto │   │   ├── compiler │   │   │   └── plugin.proto │   │   ├── descriptor.proto │   │   ├── duration.proto │   │   ├── empty.proto │   │   ├── field_mask.proto │   │   ├── source_context.proto │   │   ├── struct.proto │   │   ├── timestamp.proto │   │   ├── type.proto │   │   └── wrappers.proto │   ├── extracted-protos │   │   └── main │   ├── generated │   │   ├── source │   │   │   └── proto │   │   │   └── main │   │   │   ├── grpc │   │   │   │   └── eu │   │   │   │   └── redbyte │   │   │   │   └── pdfparser │   │   │   │   └── grpc │   │   │   │   └── PDFParserGrpc.java │   │   │   └── java │   │   │   └── eu │   │   │   └── redbyte │   │   │   └── pdfparser │   │   │   └── grpc │   │   │   ├── PDFParserApi.java │   │   │   ├── ParserRequest.java │   │   │   ├── ParserRequestOrBuilder.java │   │   │   ├── ParserResponse.java │   │   │   └── ParserResponseOrBuilder.java │   │   └── sources │   │   ├── annotationProcessor │   │   │   └── java │   │   │   └── main │   │   └── headers │   │   └── java │   │   └── main │   └── tmp │   ├── compileJava │   │   └── source-classes-mapping.txt │   └── jar │   └── MANIFEST.MF ├── build.gradle ├── gradle │   └── wrapper │   ├── gradle-wrapper.jar │   └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── src └── main └── proto └── pdfparserapi.proto 40 directories, 26 files 

The issue is that ./gradlew build returns the following errors:

> ./gradlew build > Task :compileJava FAILED /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:3: error: package io.grpc does not exist import static io.grpc.MethodDescriptor.generateFullMethodName; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:3: error: static import only from classes and interfaces import static io.grpc.MethodDescriptor.generateFullMethodName; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:4: error: package io.grpc.stub does not exist import static io.grpc.stub.ClientCalls.asyncBidiStreamingCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:4: error: static import only from classes and interfaces import static io.grpc.stub.ClientCalls.asyncBidiStreamingCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:5: error: package io.grpc.stub does not exist import static io.grpc.stub.ClientCalls.asyncClientStreamingCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:5: error: static import only from classes and interfaces import static io.grpc.stub.ClientCalls.asyncClientStreamingCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:6: error: package io.grpc.stub does not exist import static io.grpc.stub.ClientCalls.asyncServerStreamingCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:6: error: static import only from classes and interfaces import static io.grpc.stub.ClientCalls.asyncServerStreamingCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:7: error: package io.grpc.stub does not exist import static io.grpc.stub.ClientCalls.asyncUnaryCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:7: error: static import only from classes and interfaces import static io.grpc.stub.ClientCalls.asyncUnaryCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:8: error: package io.grpc.stub does not exist import static io.grpc.stub.ClientCalls.blockingServerStreamingCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:8: error: static import only from classes and interfaces import static io.grpc.stub.ClientCalls.blockingServerStreamingCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:9: error: package io.grpc.stub does not exist import static io.grpc.stub.ClientCalls.blockingUnaryCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:9: error: static import only from classes and interfaces import static io.grpc.stub.ClientCalls.blockingUnaryCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:10: error: package io.grpc.stub does not exist import static io.grpc.stub.ClientCalls.futureUnaryCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:10: error: static import only from classes and interfaces import static io.grpc.stub.ClientCalls.futureUnaryCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:11: error: package io.grpc.stub does not exist import static io.grpc.stub.ServerCalls.asyncBidiStreamingCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:11: error: static import only from classes and interfaces import static io.grpc.stub.ServerCalls.asyncBidiStreamingCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:12: error: package io.grpc.stub does not exist import static io.grpc.stub.ServerCalls.asyncClientStreamingCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:12: error: static import only from classes and interfaces import static io.grpc.stub.ServerCalls.asyncClientStreamingCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:13: error: package io.grpc.stub does not exist import static io.grpc.stub.ServerCalls.asyncServerStreamingCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:13: error: static import only from classes and interfaces import static io.grpc.stub.ServerCalls.asyncServerStreamingCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:14: error: package io.grpc.stub does not exist import static io.grpc.stub.ServerCalls.asyncUnaryCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:14: error: static import only from classes and interfaces import static io.grpc.stub.ServerCalls.asyncUnaryCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:15: error: package io.grpc.stub does not exist import static io.grpc.stub.ServerCalls.asyncUnimplementedStreamingCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:15: error: static import only from classes and interfaces import static io.grpc.stub.ServerCalls.asyncUnimplementedStreamingCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:16: error: package io.grpc.stub does not exist import static io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:16: error: static import only from classes and interfaces import static io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:20: error: cannot find symbol @javax.annotation.Generated( ^ symbol: class Generated location: package javax.annotation /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:30: error: package io.grpc does not exist private static volatile io.grpc.MethodDescriptor<eu.redbyte.pdfparser.grpc.ParserRequest, ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:38: error: package io.grpc does not exist public static io.grpc.MethodDescriptor<eu.redbyte.pdfparser.grpc.ParserRequest, ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:65: error: package io.grpc does not exist public static PDFParserStub newStub(io.grpc.Channel channel) { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:111: error: package io.grpc.stub does not exist public static final class PDFParserStub extends io.grpc.stub.AbstractStub<PDFParserStub> { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:73: error: package io.grpc does not exist io.grpc.Channel channel) { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:138: error: package io.grpc.stub does not exist public static final class PDFParserBlockingStub extends io.grpc.stub.AbstractStub<PDFParserBlockingStub> { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:81: error: package io.grpc does not exist io.grpc.Channel channel) { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:164: error: package io.grpc.stub does not exist public static final class PDFParserFutureStub extends io.grpc.stub.AbstractStub<PDFParserFutureStub> { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:263: error: package io.grpc does not exist private static volatile io.grpc.ServiceDescriptor serviceDescriptor; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:265: error: package io.grpc does not exist public static io.grpc.ServiceDescriptor getServiceDescriptor() { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:165: error: package io.grpc does not exist private PDFParserFutureStub(io.grpc.Channel channel) { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:169: error: package io.grpc does not exist private PDFParserFutureStub(io.grpc.Channel channel, ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:170: error: package io.grpc does not exist io.grpc.CallOptions callOptions) { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:175: error: package io.grpc does not exist protected PDFParserFutureStub build(io.grpc.Channel channel, ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:176: error: package io.grpc does not exist io.grpc.CallOptions callOptions) { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:139: error: package io.grpc does not exist private PDFParserBlockingStub(io.grpc.Channel channel) { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:143: error: package io.grpc does not exist private PDFParserBlockingStub(io.grpc.Channel channel, ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:144: error: package io.grpc does not exist io.grpc.CallOptions callOptions) { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:149: error: package io.grpc does not exist protected PDFParserBlockingStub build(io.grpc.Channel channel, ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:150: error: package io.grpc does not exist io.grpc.CallOptions callOptions) { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:112: error: package io.grpc does not exist private PDFParserStub(io.grpc.Channel channel) { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:116: error: package io.grpc does not exist private PDFParserStub(io.grpc.Channel channel, ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:117: error: package io.grpc does not exist io.grpc.CallOptions callOptions) { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:122: error: package io.grpc does not exist protected PDFParserStub build(io.grpc.Channel channel, ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:123: error: package io.grpc does not exist io.grpc.CallOptions callOptions) { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:130: error: package io.grpc.stub does not exist io.grpc.stub.StreamObserver<eu.redbyte.pdfparser.grpc.ParserResponse> responseObserver) { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:87: error: package io.grpc does not exist public static abstract class PDFParserImplBase implements io.grpc.BindableService { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:92: error: package io.grpc.stub does not exist io.grpc.stub.StreamObserver<eu.redbyte.pdfparser.grpc.ParserResponse> responseObserver) { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:96: error: package io.grpc does not exist @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:192: error: package io.grpc.stub.ServerCalls does not exist io.grpc.stub.ServerCalls.UnaryMethod<Req, Resp>, ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:193: error: package io.grpc.stub.ServerCalls does not exist io.grpc.stub.ServerCalls.ServerStreamingMethod<Req, Resp>, ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:194: error: package io.grpc.stub.ServerCalls does not exist io.grpc.stub.ServerCalls.ClientStreamingMethod<Req, Resp>, ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:195: error: package io.grpc.stub.ServerCalls does not exist io.grpc.stub.ServerCalls.BidiStreamingMethod<Req, Resp> { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:206: error: package io.grpc.stub does not exist public void invoke(Req request, io.grpc.stub.StreamObserver<Resp> responseObserver) { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:220: error: package io.grpc.stub does not exist io.grpc.stub.StreamObserver<Resp> responseObserver) { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:219: error: package io.grpc.stub does not exist public io.grpc.stub.StreamObserver<Req> invoke( ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:229: error: package io.grpc.protobuf does not exist implements io.grpc.protobuf.ProtoFileDescriptorSupplier, io.grpc.protobuf.ProtoServiceDescriptorSupplier { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:229: error: package io.grpc.protobuf does not exist implements io.grpc.protobuf.ProtoFileDescriptorSupplier, io.grpc.protobuf.ProtoServiceDescriptorSupplier { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:250: error: package io.grpc.protobuf does not exist implements io.grpc.protobuf.ProtoMethodDescriptorSupplier { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:33: error: package io.grpc.stub.annotations does not exist @io.grpc.stub.annotations.RpcMethod( ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:37: error: package io.grpc.MethodDescriptor does not exist methodType = io.grpc.MethodDescriptor.MethodType.UNARY) ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:40: error: package io.grpc does not exist io.grpc.MethodDescriptor<eu.redbyte.pdfparser.grpc.ParserRequest, eu.redbyte.pdfparser.grpc.ParserResponse> getParseMethod; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:46: error: package io.grpc.MethodDescriptor does not exist .setType(io.grpc.MethodDescriptor.MethodType.UNARY) ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:45: error: package io.grpc does not exist io.grpc.MethodDescriptor.<eu.redbyte.pdfparser.grpc.ParserRequest, eu.redbyte.pdfparser.grpc.ParserResponse>newBuilder() ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:47: error: cannot find symbol .setFullMethodName(generateFullMethodName( ^ symbol: method generateFullMethodName(String,String) location: class PDFParserGrpc /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:50: error: package io.grpc.protobuf does not exist .setRequestMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:52: error: package io.grpc.protobuf does not exist .setResponseMarshaller(io.grpc.protobuf.ProtoUtils.marshaller( ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:96: error: method does not override or implement a method from a supertype @java.lang.Override public final io.grpc.ServerServiceDefinition bindService() { ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:97: error: package io.grpc does not exist return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor()) ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:100: error: cannot find symbol asyncUnaryCall( ^ symbol: method asyncUnaryCall(MethodHandlers<ParserRequest,ParserResponse>) location: class PDFParserImplBase /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:121: error: method does not override or implement a method from a supertype @java.lang.Override ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:132: error: cannot find symbol getChannel().newCall(getParseMethod(), getCallOptions()), request, responseObserver); ^ symbol: method getChannel() location: class PDFParserStub /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:132: error: cannot find symbol getChannel().newCall(getParseMethod(), getCallOptions()), request, responseObserver); ^ symbol: method getCallOptions() location: class PDFParserStub /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:148: error: method does not override or implement a method from a supertype @java.lang.Override ^ ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:217: error: method does not override or implement a method from a supertype @java.lang.Override ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:232: error: method does not override or implement a method from a supertype @java.lang.Override ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:237: error: method does not override or implement a method from a supertype @java.lang.Override ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:257: error: method does not override or implement a method from a supertype @java.lang.Override ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:266: error: package io.grpc does not exist io.grpc.ServiceDescriptor result = serviceDescriptor; ^ /Users/kurtpeek/go/src/github.com/kurtpeek/pdf-parser/build/generated/source/proto/main/grpc/eu/redbyte/pdfparser/grpc/PDFParserGrpc.java:271: error: package io.grpc does not exist serviceDescriptor = result = io.grpc.ServiceDescriptor.newBuilder(SERVICE_NAME) ^ 96 errors FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':compileJava'. > Compilation failed; see the compiler error output for details. * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0. Use '--warning-mode all' to show the individual deprecation warnings. See https://docs.gradle.org/6.7/userguide/command_line_interface.html#sec:command_line_warnings BUILD FAILED in 810ms 4 actionable tasks: 1 executed, 3 up-to-date 

I've tried adding the following line to the dependencies in the build.gradle,

 compile group: 'io.grpc', name: 'protoc-gen-grpc-java', version: '1.14.0' 

but this led to the same error. Any ideas how to fix the Gradle build?

1 Answer 1

8

io.grpc.* is in grpc-api (which most other grpc dependencies will depend on). io.grpc.stub.* is in grpc-stub. io.grpc.protobuf.* is in grpc-protobuf. javax.annotation.Generated can be found in Tomcat's annotations-api.

So you need to add (as mentioned in the grpc-java readme):

implementation "io.grpc:grpc-protobuf:1.14.0" implementation "io.grpc:grpc-stub:1.14.0" compileOnly "org.apache.tomcat:annotations-api:6.0.53" 

gRPC v1.14.0 is quite old; you should upgrade to a newer version for actual use. To actually run, you probably need implementation 'io.grpc:grpc-netty-shaded:1.34.1' as well.

Sign up to request clarification or add additional context in comments.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.