Skip to content

Investigate moving from Java 8 to 17 or higher #551

@dbenn

Description

@dbenn

I was motivated to move to whatever version of Java supported multi-line strings, e.g.

String myStr = """
123
456
hello
""";

and the first long term support version was apparently 17+.

We routinely test (e.g. UTs as actions) with versions from 8 through to 23 (not every version), and 17 is not exactly new.

So, it seemed like a good bet...

However, moving to 17 led to as yet unseen problems, in particular, UI-related errors like this on my Mac:

2025-12-23 19:05:59.605 java[83868:44261771] GLDRendererMetal command buffer completion error: Error Domain=MTLCommandBufferErrorDomain Code=8 "Insufficient Memory (00000008:kIOGPUCommandBufferCallbackErrorOutOfMemory)" UserInfo={NSLocalizedDescription=Insufficient Memory (00000008:kIOGPUCommandBufferCallbackErrorOutOfMemory)}

This happened at start up initially, preventing the main window from opening. After a search, the following seemed to fix it:

-Dsun.java2d.metal=false

but it showed up semi-randomly, e.g. when selecting a list item chooser in a dialog box or opening Preferences.

There are also what used to be warnings in 8 that now appear to be errors in 17.

Before settling on trying to resolve problems with VStar+17, trying the next LTS, 21, may be simplest. So, I did that, and it didn't seem to be any better.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

Projects

Status

Done

Relationships

None yet

Development

No branches or pull requests

Issue actions