On Fri, 21 Nov 2025 16:32:49 GMT, David Beaumont <[email protected]> wrote:
> Adds a semantic reason for failure which can be optionally interrogated by
> calling code.
> Use the 'Reason.BAD_VERSION' value to trigger a different translated error
> message from the JImageTask.
>
> I would consider moving the error message string into the Reason enum to
> simplify the code triggering the error and avoid message string duplication,
> but it's not straightforward due to the need to supply the version numbers.
>
> We can use this approach to provide translated messages for all the distinct
> failure reasons if needed.
src/java.base/share/classes/jdk/internal/jimage/BasicImageReader.java line 469:
> 467: * semantic reason for failure and allow better user-facing error
> messages.
> 468: */
> 469: public final static class ImageError extends IOException {
Exception names ending in "Error" are usually fatal to the VM, this seems more
like a normal exception.
Generally, we don't add single purpose exceptions, they are little used and
just contribute to bloat.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/28456#discussion_r2550365590