Nir: So these folders are not needed to compile, but they are needed to run.
I suggest we bring them back to .classpath and also modify build.gradle to create all 4 folders as a part of the corresponding target. What do you think? -andy From: openjfx-dev <openjfx-dev-r...@openjdk.org> on behalf of Jeanette Winzenburg <faste...@swingempire.de> Date: Friday, 2022/07/15 at 03:19 To: openjfx-dev@openjdk.org <openjfx-dev@openjdk.org> Subject: Re: Eclipse: ClassNotFoundException: com.sun.prism.shader.FillPgram_Color_Loader Zitat von Nir Lisker <nlis...@gmail.com>: Hi Nir, thanks for the explanation - though I have no idea why Eclipse wants them (see them again after re-adding as source folders and all running as before). Not sure where to go from here, would prefer not to have a local classpath that differs from the one in the repository .. hmm -- Jeanette > To be more specific, FillPgram_Color_Loader.java is located under the > build/gensrc folder, which is created during the javafx setup depending on > the OS. Specifically, it's under build/gensrc/jsl-prism, which is > Windows-specific. > The change to the classpath file removed these folders from the source > folders list in the build path, so I don't know why you would get this > error. Nothing in the "main" source folders references these in compile- or > build-time. > > On Fri, Jul 15, 2022 at 12:51 PM Nir Lisker <nlis...@gmail.com> wrote: > >> The Eclipse project files were updated recently in >> https://github.com/openjdk/jfx/pull/804. The OS-specific folders were >> removed. I tested it and I had no issue after this change. On what resource >> are you getting this error? >> >> On Fri, Jul 15, 2022 at 12:44 PM Jeanette Winzenburg < >> faste...@swingempire.de> wrote: >> >>> >>> Hi, >>> >>> after synching my master branch with upstream (has been a long while >>> since my previous update ;), I can't use the Eclipse projects (base, >>> controls, graphics are the only ones I'm keeping for change in >>> Eclipse) in another project: when running any application it's >>> throwing the stacktrace below. >>> >>> My overall setup worked fine before (didn't dig yet when it started >>> not to), running the tests inside the fx projects themselves is fine, >>> though. >>> >>> Looks like there is something missing (native?) related to graphics. >>> >>> Where to start looking for the reason? >>> >>> Stacktrace: >>> >>> java.lang.ClassNotFoundException: >>> com.sun.prism.shader.FillPgram_Color_Loader >>> at >>> >>> java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583) >>> at >>> >>> java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) >>> at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) >>> at java.base/java.lang.Class.forName0(Native Method) >>> at java.base/java.lang.Class.forName(Class.java:332) >>> at >>> >>> javafx.graphics/com.sun.prism.d3d.D3DResourceFactory.createStockShader(D3DResourceFactory.java:426) >>> at >>> >>> javafx.graphics/com.sun.prism.impl.ps.BaseShaderContext.getPaintShader(BaseShaderContext.java:269) >>> at >>> >>> javafx.graphics/com.sun.prism.impl.ps.BaseShaderContext.validatePaintOp(BaseShaderContext.java:500) >>> at >>> >>> javafx.graphics/com.sun.prism.impl.ps.BaseShaderContext.validatePaintOp(BaseShaderContext.java:369) >>> at >>> >>> javafx.graphics/com.sun.prism.impl.ps.BaseShaderGraphics.renderGeneralRoundedPgram(BaseShaderGraphics.java:919) >>> at >>> >>> javafx.graphics/com.sun.prism.impl.ps.BaseShaderGraphics.renderGeneralRoundedRect(BaseShaderGraphics.java:620) >>> at >>> >>> javafx.graphics/com.sun.prism.impl.ps.BaseShaderGraphics.fillRect(BaseShaderGraphics.java:1526) >>> at >>> >>> javafx.graphics/com.sun.javafx.sg.prism.NGRegion.renderBackgroundRectanglesDirectly(NGRegion.java:1112) >>> at >>> >>> javafx.graphics/com.sun.javafx.sg.prism.NGRegion.renderBackgroundRectangle(NGRegion.java:852) >>> at >>> >>> javafx.graphics/com.sun.javafx.sg.prism.NGRegion.renderAsRectangle(NGRegion.java:754) >>> at >>> >>> javafx.graphics/com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:575) >>> at >>> javafx.graphics/com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2072) >>> at >>> javafx.graphics/com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1964) >>> at >>> >>> javafx.graphics/com.sun.javafx.tk.quantum.ViewPainter.doPaint(ViewPainter.java:480) >>> at >>> >>> javafx.graphics/com.sun.javafx.tk.quantum.ViewPainter.paintImpl(ViewPainter.java:329) >>> at >>> >>> javafx.graphics/com.sun.javafx.tk.quantum.PresentingPainter.run(PresentingPainter.java:92) >>> at >>> >>> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) >>> at >>> java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) >>> at >>> javafx.graphics/com.sun.javafx.tk.RenderJob.run(RenderJob.java:58) >>> at >>> >>> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) >>> at >>> >>> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) >>> at >>> >>> javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:126) >>> at java.base/java.lang.Thread.run(Thread.java:835) >>> java.lang.InternalError: Error loading stock shader FillPgram_Color >>> at >>> >>> javafx.graphics/com.sun.prism.d3d.D3DResourceFactory.createStockShader(D3DResourceFactory.java:432) >>> at >>> >>> javafx.graphics/com.sun.prism.impl.ps.BaseShaderContext.getPaintShader(BaseShaderContext.java:269) >>> at >>> >>> javafx.graphics/com.sun.prism.impl.ps.BaseShaderContext.validatePaintOp(BaseShaderContext.java:500) >>> at >>> >>> javafx.graphics/com.sun.prism.impl.ps.BaseShaderContext.validatePaintOp(BaseShaderContext.java:369) >>> at >>> >>> javafx.graphics/com.sun.prism.impl.ps.BaseShaderGraphics.renderGeneralRoundedPgram(BaseShaderGraphics.java:919) >>> at >>> >>> javafx.graphics/com.sun.prism.impl.ps.BaseShaderGraphics.renderGeneralRoundedRect(BaseShaderGraphics.java:620) >>> at >>> >>> javafx.graphics/com.sun.prism.impl.ps.BaseShaderGraphics.fillRect(BaseShaderGraphics.java:1526) >>> at >>> >>> javafx.graphics/com.sun.javafx.sg.prism.NGRegion.renderBackgroundRectanglesDirectly(NGRegion.java:1112) >>> at >>> >>> javafx.graphics/com.sun.javafx.sg.prism.NGRegion.renderBackgroundRectangle(NGRegion.java:852) >>> at >>> >>> javafx.graphics/com.sun.javafx.sg.prism.NGRegion.renderAsRectangle(NGRegion.java:754) >>> at >>> >>> javafx.graphics/com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:575) >>> at >>> javafx.graphics/com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2072) >>> at >>> javafx.graphics/com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1964) >>> at >>> >>> javafx.graphics/com.sun.javafx.tk.quantum.ViewPainter.doPaint(ViewPainter.java:480) >>> at >>> >>> javafx.graphics/com.sun.javafx.tk.quantum.ViewPainter.paintImpl(ViewPainter.java:329) >>> at >>> >>> javafx.graphics/com.sun.javafx.tk.quantum.PresentingPainter.run(PresentingPainter.java:92) >>> at >>> >>> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) >>> at >>> java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) >>> at >>> javafx.graphics/com.sun.javafx.tk.RenderJob.run(RenderJob.java:58) >>> at >>> >>> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) >>> at >>> >>> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) >>> at >>> >>> javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:126) >>> at java.base/java.lang.Thread.run(Thread.java:835) >>> >>> -- Thanks, Jeanette >>> >>> >>>