Jeanette, Nir: Apparently, the classes in build/gensrc are being accessed via reflection, for example
D3DResourceFactory. createStockShader() ES2ResourceFactory. createStockShader() You say the problem went away after adding the classpath entries manually? -andy From: openjfx-dev <openjfx-dev-r...@openjdk.org> on behalf of Jeanette Winzenburg <faste...@swingempire.de> Date: Friday, 2022/07/15 at 03:29 To: Nir Lisker <nlis...@gmail.com> Cc: openjfx-dev <openjfx-dev@openjdk.org> Subject: Re: Eclipse: ClassNotFoundException: com.sun.prism.shader.FillPgram_Color_Loader Zitat von Nir Lisker <nlis...@gmail.com>: > What resource is the error on? what do you mean by _resource_? It's on the console .. > > On Fri, Jul 15, 2022 at 1:19 PM Jeanette Winzenburg <faste...@swingempire.de> > wrote: > >> >> 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 >> >>> >> >>> >> >>> >> >> >> >>