According to the Java specification:
8.1.2 Inner Classes and Enclosing Instances
An inner class is a nested class that is not explicitly or implicitly declared static. Inner classes may not declare static initializers (ÃÂ§8.7) or member interfaces. Inner classes may not declare static members, unless they are compile-time constant fields (ÃÂ§15.28).
So no issue should be reported on final field of inner classes whose type is not a primitive or a String. Rule specification has been updated.