diff --git a/extensions/resteasy-reactive/jaxrs-client-reactive/deployment/src/main/java/io/quarkus/jaxrs/client/reactive/deployment/JaxrsClientReactiveProcessor.java b/extensions/resteasy-reactive/jaxrs-client-reactive/deployment/src/main/java/io/quarkus/jaxrs/client/reactive/deployment/JaxrsClientReactiveProcessor.java
index b3335b157c0c4..e843d538face9 100644
--- a/extensions/resteasy-reactive/jaxrs-client-reactive/deployment/src/main/java/io/quarkus/jaxrs/client/reactive/deployment/JaxrsClientReactiveProcessor.java
+++ b/extensions/resteasy-reactive/jaxrs-client-reactive/deployment/src/main/java/io/quarkus/jaxrs/client/reactive/deployment/JaxrsClientReactiveProcessor.java
@@ -505,7 +505,11 @@ A more full example of generated client (with sub-resource) can is at the bottom
                     ClassInfo subResourceInterface = index.getClassByName(returnType.name());
                     if (!Modifier.isInterface(subResourceInterface.flags())) {
                         throw new IllegalArgumentException(
-                                "Sub resource type is not an interface: " + returnType.name().toString());
+                                "Client interface method: " + jandexMethod.declaringClass().name() + "#" + jandexMethod
+                                        + " has no HTTP method annotation  (@GET, @POST, etc) and it's return type: "
+                                        + returnType.name().toString() + " is not an interface. "
+                                        + "If it's a sub resource method, it has to return an interface. "
+                                        + "If it's not, it has to have one of the HTTP method annotations.");
                     }
                     // generate implementation for a method from the jaxrs interface:
                     MethodCreator methodCreator = c.getMethodCreator(method.getName(), method.getSimpleReturnType(),