diff --git a/jsonb-generator/src/main/java/io/avaje/jsonb/generator/TypeReader.java b/jsonb-generator/src/main/java/io/avaje/jsonb/generator/TypeReader.java index 256cd9eb..618e8d0f 100644 --- a/jsonb-generator/src/main/java/io/avaje/jsonb/generator/TypeReader.java +++ b/jsonb-generator/src/main/java/io/avaje/jsonb/generator/TypeReader.java @@ -358,8 +358,15 @@ private void matchFieldToSetter(FieldReader field) { field.setUseGetterAddAll(); } else if (ProcessingContext.isCascadeType(baseType)) { nonAccessibleField = true; - logWarn(field.element(), errorContext + baseType + ", non public field %s with no matching setter or constructor?", field.fieldName()); - + var module = APContext.getProjectModuleElement(); + if (!module.isUnnamed() && module.equals(APContext.elements().getModuleOf(baseType))) { + logWarn( + field.element(), + "%s%s, non public field %s with no matching setter or constructor?", + errorContext, + baseType, + field.fieldName()); + } } else { logError(field.element(), errorContext + baseType + ", non public field %s with no matching setter or constructor?", field.fieldName()); }