diff --git a/extensions/grpc/protoc/src/main/java/io/quarkus/grpc/protoc/plugin/MutinyGrpcGenerator.java b/extensions/grpc/protoc/src/main/java/io/quarkus/grpc/protoc/plugin/MutinyGrpcGenerator.java index 65743431321b8..fc11f55503d3e 100644 --- a/extensions/grpc/protoc/src/main/java/io/quarkus/grpc/protoc/plugin/MutinyGrpcGenerator.java +++ b/extensions/grpc/protoc/src/main/java/io/quarkus/grpc/protoc/plugin/MutinyGrpcGenerator.java @@ -41,9 +41,25 @@ public List generateFiles(PluginProtos. .collect(Collectors.toList()); List services = findServices(protosToGenerate, typeMap); + validateServices(services); return generateFiles(services); } + private void validateServices(List services) { + boolean failed = false; + for (ServiceContext service : services) { + if (service.packageName == null || service.packageName.isBlank()) { + System.err.println("Using the default java package is not supported for " + + "gRPC code generation. Please specify `option java_package = \"your.package\"` in " + + service.protoName); + failed = true; + } + } + if (failed) { + throw new IllegalArgumentException("Code generation failed. Please check the log above for details."); + } + } + private List findServices(List protos, ProtoTypeMap typeMap) { List contexts = new ArrayList<>();