RFR: 8357625: Build should generate platform specific shaders [v3]

Andy Goryachev angorya at openjdk.org
Wed Feb 18 15:38:12 UTC 2026


On Wed, 18 Feb 2026 11:48:34 GMT, Lukasz Kostyra <lkostyra at openjdk.org> wrote:

>> In fact, I would like a comment added here saying something like
>> 
>> `do not introduce platform-specific logic here for the sake of third party tools (Eclipse)`
>
> I guess the question I have then is - _why_ these files are a part of Eclipse config files.
> 
> This is a build directory, which technically should contain only artifacts related to building JavaFX. Why would HLSL compilation artifacts be needed at all in Eclipse?

They contain runtime resources.  Without these directories,


RenderJob.run: internal exception
java.lang.ExceptionInInitializerError
	at javafx.graphics/com.sun.prism.mtl.MTLResourceFactory.<init>(MTLResourceFactory.java:61)
	at javafx.graphics/com.sun.prism.mtl.MTLPipeline.getResourceFactory(MTLPipeline.java:93)
	at javafx.graphics/com.sun.prism.mtl.MTLPipeline.getDefaultResourceFactory(MTLPipeline.java:84)
	at javafx.graphics/com.sun.prism.GraphicsPipeline.getDefaultResourceFactory(GraphicsPipeline.java:155)
	at javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer.lambda$1(QuantumRenderer.java:155)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:545)
	at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:369)
	at javafx.graphics/com.sun.javafx.tk.RenderJob.run(RenderJob.java:58)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1090)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:614)
	at javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:122)
	at java.base/java.lang.Thread.run(Thread.java:1474)
Caused by: java.lang.RuntimeException: java.io.IOException: Stream closed
	at javafx.graphics/com.sun.prism.mtl.MTLContext.<clinit>(MTLContext.java:109)
	... 12 more
Caused by: java.io.IOException: Stream closed
	at java.base/java.io.BufferedInputStream.getInIfOpen(BufferedInputStream.java:170)


see https://bugs.openjdk.org/browse/JDK-8329783

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

PR Review Comment: https://git.openjdk.org/jfx/pull/2071#discussion_r2822952705


More information about the openjfx-dev mailing list