RFR: 8359180: Apply java.io.Serial annotations in java.instrument

Sergey Bylokhov serb at openjdk.org
Wed Jun 11 18:05:44 UTC 2025


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.

-------------

Commit messages:
 - 8359180: Apply java.io.Serial annotations in java.instrument

Changes: https://git.openjdk.org/jdk/pull/25738/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=25738&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8359180
  Stats: 16 lines in 3 files changed: 12 ins; 1 del; 3 mod
  Patch: https://git.openjdk.org/jdk/pull/25738.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/25738/head:pull/25738

PR: https://git.openjdk.org/jdk/pull/25738


More information about the serviceability-dev mailing list