RFR: 8359180: Apply java.io.Serial annotations in java.instrument
Paul Hohensee
phh at openjdk.org
Fri Jun 13 17:09:33 UTC 2025
On Tue, 10 Jun 2025 23:19:40 GMT, Sergey Bylokhov <serb at openjdk.org> wrote:
> Please review the application of `@Serial` annotation ([JDK-8202385](https://bugs.openjdk.org/browse/JDK-8202385)) to types in the java.instrument module to enable stricter compile-time checking of serialization-related declarations. Just a few classes are covered.
>
> This annotation can be applied to these methods in the module:
>
> private void writeObject(java.io.ObjectOutputStream stream) throws IOException
> private void readObject(java.io.ObjectInputStream stream) throws IOException, ClassNotFoundException
> private void readObjectNoData() throws ObjectStreamException
> ANY-ACCESS-MODIFIER Object writeReplace() throws ObjectStreamException
> ANY-ACCESS-MODIFIER Object readResolve() throws ObjectStreamException
> private static final ObjectStreamField[] serialPersistentFields
> private static final long serialVersionUID
>
>
> Example of a similar change in the [java.compiler](https://github.com/openjdk/jdk/pull/24891) module.
I'm not an expert in this area, but this PR just adds @Serial to 3 instances of serialVersionUID, which is one of the fields mentioned in [JDK-8202385](https://bugs.openjdk.org/browse/JDK-8202385), so lgtm.
It would be worth doing a scan for the instances of serialVersionUID that need @Serial added.
-------------
Marked as reviewed by phh (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/25738#pullrequestreview-2925554810
More information about the serviceability-dev
mailing list