MixedDescriptors
The field number passed into #getFieldByNumber belongs to a different proto to the Descriptor.

Severity
WARNING
Has Fix?

The problem

A proto’s Descriptor was created by mixing the Descriptors class from one proto with the field number from another. E.g.:

Foo.getDescriptors().findFieldByNumber(Bar.ID_FIELD_NUMBER)

This accesses the Descriptor of a field in Foo with a field number from Bar. One of these was probably intended:

Foo.getDescriptors().findFieldByNumber(Foo.ID_FIELD_NUMBER)
Bar.getDescriptors().findFieldByNumber(Bar.ID_FIELD_NUMBER)

Suppression

Suppress false positives by adding the suppression annotation @SuppressWarnings("MixedDescriptors") to the enclosing element.