<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
> What is the fear of modifying the build.gradle?<br>
<br>
Maybe nothing, although we'd need to ensure that those empty dirs
don't show up in the build artifacts. I just don't really care for
the idea of modifying the product build to work around what looks
like an IDE limitation, unless there is no choice and we can prove
that it doesn't make a difference to the final artifacts.<br>
<br>
-- Kevin<br>
<br>
<br>
<div class="moz-cite-prefix">On 7/15/2022 3:42 PM, Andy Goryachev
wrote:<br>
</div>
<blockquote type="cite" cite="mid:BL0PR10MB29485DDEE2D52D9B78191708E58B9@BL0PR10MB2948.namprd10.prod.outlook.com">
<meta name="Generator" content="Microsoft Word 15 (filtered
medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]-->
<style>@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}@font-face
{font-family:"Times New Roman \(Body CS\)";
panose-1:2 11 6 4 2 2 2 2 2 4;}p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}p.gmail-m-5352811517541571778msolistparagraph, li.gmail-m-5352811517541571778msolistparagraph, div.gmail-m-5352811517541571778msolistparagraph
{mso-style-name:gmail-m_-5352811517541571778msolistparagraph;
mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}span.EmailStyle20
{mso-style-type:personal-reply;
font-family:"Courier New";
color:windowtext;}.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}div.WordSection1
{page:WordSection1;}ol
{margin-bottom:0in;}ul
{margin-bottom:0in;}</style>
<div class="WordSection1">
<p class="MsoNormal"><span style="font-family:"Courier
New"">Nir:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New"">Which version of eclipse are you on?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New"">I've added your entry and my Eclipse (2022-06
4.24.0 on Mac) complains about<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New"">Project 'graphics' is missing required source
folder: 'build/hi' Build path graphics<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New"">It does not allow to ignore this problem, as the
only choices are "error" and "warning":<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New""><img style="width:8.677in;height:2.2291in" id="Picture_x0020_1" src="cid:part1.DYuQQXde.1MLr0Qii@oracle.com" class="" width="833" height="214"></span><span style="font-family:"Courier New""><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New"">What is the fear of modifying the build.gradle?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New"">-a<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Courier
New""><o:p> </o:p></span></p>
<div style="border:none;border-top:solid #B5C4DF
1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:12.0pt;color:black">From:
</span></b><span style="font-size:12.0pt;color:black">Nir
Lisker <a class="moz-txt-link-rfc2396E" href="mailto:nlisker@gmail.com"><nlisker@gmail.com></a><br>
<b>Date: </b>Friday, 2022/07/15 at 15:33<br>
<b>To: </b>Andy Goryachev
<a class="moz-txt-link-rfc2396E" href="mailto:andy.goryachev@oracle.com"><andy.goryachev@oracle.com></a><br>
<b>Cc: </b>Jeanette Winzenburg
<a class="moz-txt-link-rfc2396E" href="mailto:fastegal@swingempire.de"><fastegal@swingempire.de></a>, Kevin Rushforth
<a class="moz-txt-link-rfc2396E" href="mailto:kevin.rushforth@oracle.com"><kevin.rushforth@oracle.com></a>,
<a class="moz-txt-link-abbreviated" href="mailto:openjfx-dev@openjdk.org">openjfx-dev@openjdk.org</a> <a class="moz-txt-link-rfc2396E" href="mailto:openjfx-dev@openjdk.org"><openjfx-dev@openjdk.org></a><br>
<b>Subject: </b>Re: [External] : Re: Eclipse:
ClassNotFoundException:
com.sun.prism.shader.FillPgram_Color_Loader<o:p></o:p></span></p>
</div>
<div>
<blockquote style="border:none;border-left:solid #CCCCCC
1.0pt;padding:0in 0in 0in
6.0pt;margin-left:4.8pt;margin-right:0in">
<ol type="1" start="1">
<li class="gmail-m-5352811517541571778msolistparagraph" style="mso-list:l3 level1 lfo1">
<span style="font-family:"Courier New"">Unfortunately,
even with â€ignore optional problems†Eclipse generates
the “missing required source folderâ€.</span><o:p></o:p></li>
</ol>
</blockquote>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I added the following to the classpath
of graphics:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal"> <classpathentry kind="src"
path="build/hi"><br>
<attributes><br>
<attribute name="ignore_optional_problems"
value="true"/><br>
</attributes><o:p></o:p></p>
<div>
<p class="MsoNormal"></classpathentry> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Eclipse adds the non-existent source
folder even though there is no such directory and does not
complain. We should be able to revert the changes done to
the graphics classpath file and then add the other
platform-specific entries.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Worst case, we could generate an empty
folder, but that would require changing the build, which
is not the best approach.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I also managed to reproduce the runtime
error by using an application that uses fonts. If you know
what the Mac/Linux-specific folders are, I will add them
to my classpath and see if everything works for me.<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Fri, Jul 15, 2022 at 10:34 PM Nir
Lisker <<a href="mailto:nlisker@gmail.com" moz-do-not-send="true" class="moz-txt-link-freetext">nlisker@gmail.com</a>>
wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC
1.0pt;padding:0in 0in 0in
6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">Ah, I missed that it's during
runtime. When I reviewed the PR I tested an external
project which relies on the graphics module and it
worked fine. I will try to find a case that throws this
error and see what can be done.<o:p></o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Fri, Jul 15, 2022 at 9:22 PM
Andy Goryachev <<a href="mailto:andy.goryachev@oracle.com" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">andy.goryachev@oracle.com</a>>
wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC
1.0pt;padding:0in 0in 0in
6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier New"">Nir:</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier New""> </span><o:p></o:p></p>
<ol type="1" start="1">
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l4
level1 lfo2">
<span style="font-family:"Courier
New"">Unfortunately, even with â€ignore
optional problems†Eclipse generates the
“missing required source folderâ€. Below are
the four entries I’ve added to
modules/javafx.graphics/.classpath:</span><o:p></o:p></li>
</ol>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier New""> </span><o:p></o:p></p>
<p><span style="color:black"> </span><classpathentry
kind="src" path="build/hlsl/Prism"><o:p></o:p></p>
<p> <attributes><o:p></o:p></p>
<p><span style="color:black">
</span><attribute
name="ignore_optional_problems" value="true"/><o:p></o:p></p>
<p> </attributes><o:p></o:p></p>
<p> </classpathentry><o:p></o:p></p>
<p><span style="color:black"> </span><classpathentry
kind="src" path="build/gensrc/jsl-prism"><o:p></o:p></p>
<p> <attributes><o:p></o:p></p>
<p><span style="color:black">
</span><attribute
name="ignore_optional_problems" value="true"/><o:p></o:p></p>
<p> </attributes><o:p></o:p></p>
<p> </classpathentry><o:p></o:p></p>
<p><span style="color:black"> </span><classpathentry
kind="src" path="build/hlsl/Decora"><o:p></o:p></p>
<p> <attributes><o:p></o:p></p>
<p><span style="color:black">
</span><attribute
name="ignore_optional_problems" value="true"/><o:p></o:p></p>
<p> </attributes><o:p></o:p></p>
<p> </classpathentry><o:p></o:p></p>
<p><span style="color:black"> </span><classpathentry
kind="src" path="build/gensrc/jsl-decora"><o:p></o:p></p>
<p> <attributes><o:p></o:p></p>
<p><span style="color:black">
</span><attribute
name="ignore_optional_problems" value="true"/><o:p></o:p></p>
<p> </attributes><o:p></o:p></p>
<p> </classpathentry>
<classpathentry kind="src"
path="src/main/java"/><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier New""> </span><o:p></o:p></p>
<ol type="1" start="2">
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l2
level1 lfo3">
<span style="font-family:"Courier
New"">The classes in build/gensrc/
generate a runtime exception, not a build
error. I wonder if perhaps we should add an
entry to the library path instead. Let me
check on this.</span><o:p></o:p></li>
</ol>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier New""> </span><o:p></o:p></p>
<ol type="1" start="3">
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0
level1 lfo4">
<span style="font-family:"Courier
New"">Again, Jeanette’s report was about
runtime error. I wonder though if we have /
should have a file that documents where
reflection is being used. (Perhaps it already
exists somewhere? Searching for “reflectionâ€
turned out 4.5K hits…)</span><o:p></o:p></li>
</ol>
<p><span style="font-family:"Courier New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier New"">What
do you think?</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier New"">-andy</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier New""> </span><o:p></o:p></p>
<div style="border:none;border-top:solid #B5C4DF
1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt"><b><span style="font-size:12.0pt;color:black">From:
</span></b><span style="font-size:12.0pt;color:black">Nir
Lisker <<a href="mailto:nlisker@gmail.com" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">nlisker@gmail.com</a>><br>
<b>Date: </b>Friday, 2022/07/15 at 11:04<br>
<b>To: </b>Andy Goryachev <<a href="mailto:andy.goryachev@oracle.com" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">andy.goryachev@oracle.com</a>>,
Jeanette Winzenburg <<a href="mailto:fastegal@swingempire.de" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">fastegal@swingempire.de</a>><br>
<b>Cc: </b>Kevin Rushforth <<a href="mailto:kevin.rushforth@oracle.com" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">kevin.rushforth@oracle.com</a>>,
<a href="mailto:openjfx-dev@openjdk.org" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">openjfx-dev@openjdk.org</a>
<<a href="mailto:openjfx-dev@openjdk.org" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">openjfx-dev@openjdk.org</a>><br>
<b>Subject: </b>[External] : Re: Eclipse:
ClassNotFoundException:
com.sun.prism.shader.FillPgram_Color_Loader</span><o:p></o:p></p>
</div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">First
of all, you can set "ignore optional compile
problems" on a source folder in Eclipse. In
fact, these folders were set as such before
the change.<o:p></o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">But
more importantly, I don't see how classes
that are only used in reflection will cause
a build error. If these folders are not
referenced in compile time, Eclipse doesn't
need them as source folders.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Jeanette,
the Problems view in Eclipse has a table where
it shows the problem and the resource and path
from which the error originates. If you get
errors because of missing OS-specific folders,
it's crucial to know what reports those
errors, that is, who is looking for these
folders.<o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">On
Fri, Jul 15, 2022 at 8:17 PM Andy Goryachev
<<a href="mailto:andy.goryachev@oracle.com" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">andy.goryachev@oracle.com</a>>
wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid
#CCCCCC 1.0pt;padding:0in 0in 0in
6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt">
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">Kevin:</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">The four classpath entries
in question are</span><o:p></o:p></p>
<p>build/hlsl/Prism<o:p></o:p></p>
<p>build/gensrc/jsl-prism<o:p></o:p></p>
<p>build/hlsl/Decora<o:p></o:p></p>
<p>build/gensrc/jsl-decora<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">once added to the Eclipse
.classpath file (in graphics) I see
two warnings (on Mac):</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p>Project 'graphics' is missing required
source folder: 'build/hlsl/Decora'
Build path graphics<o:p></o:p></p>
<p>Project 'graphics' is missing required
source folder: 'build/hlsl/Prism'
Build path graphics<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">For the moment I cannot
verify the situation on Windows or
Linux, but I think Nir mentioned that
these directories might be created on
Windows, so this is my current
assumption.</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">The problem in Eclipse is
that these warnings (incomplete build
path) cannot be turned off. One
solution is to (re)create the missing
directories manually after each
[gradle clean]. The other solution is
to modify gradle build to always
create these directories, even if they
are not used. This step is usually in
‘init’ target in the builds that
utilize clean-init-build cycle.</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">What could be the problem
in creating empty directories?</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<ul type="disc">
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l1
level1 lfo5">
Is there a way to make it conditional?<o:p></o:p></li>
</ul>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">In theory, yes, via
classpath variables:</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""><a href="https://urldefense.com/v3/__https:/stackoverflow.com/questions/495264/how-can-i-specify-an-eclipse-classpath-entry-for-specific-o-s-platform__;!!ACWV5N9M2RV99hQ!LIzGSIjIMUXkp-9z2M2VFKfJBUQcWoQPJSn6doHpNKi_Zr1Tms-_bnPFrh67esgNcmElmd8oTKoXmLRcdWkg$" target="_blank" moz-do-not-send="true">https://stackoverflow.com/questions/495264/how-can-i-specify-an-eclipse-classpath-entry-for-specific-o-s-platform</a></span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">I’ve never used this
before. So far these directories are
the only place where we have platform
differences in the classpath.</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">Could someone with a
Windows machine verify that
</span>'build/hlsl/Decora'<span style="font-family:"Courier
New""> and </span>'build/hlsl/Prism'<span style="font-family:"Courier
New""> are not empty please?</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">Thank you</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">-andy</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<div style="border:none;border-top:solid
#B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt"><b><span style="font-size:12.0pt;color:black">From:
</span></b><span style="font-size:12.0pt;color:black">openjfx-dev
<<a href="mailto:openjfx-dev-retn@openjdk.org" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">openjfx-dev-retn@openjdk.org</a>>
on behalf of Kevin Rushforth <<a href="mailto:kevin.rushforth@oracle.com" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">kevin.rushforth@oracle.com</a>><br>
<b>Date: </b>Friday, 2022/07/15 at
09:51<br>
<b>To: </b><a href="mailto:openjfx-dev@openjdk.org" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">openjfx-dev@openjdk.org</a>
<<a href="mailto:openjfx-dev@openjdk.org" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">openjfx-dev@openjdk.org</a>><br>
<b>Subject: </b>Re: Eclipse:
ClassNotFoundException:
com.sun.prism.shader.FillPgram_Color_Loader</span><o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt"> <o:p></o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">On
7/15/2022 9:05 AM, Andy Goryachev
wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">Nir:</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">So these folders are not
needed to compile, but they are
needed to run.
</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">I suggest we bring them
back to .classpath</span><o:p></o:p></p>
</blockquote>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt"><br>
Is there a way to make it conditional?<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">and also modify
build.gradle to create all 4 folders
as a part of the corresponding
target.</span><o:p></o:p></p>
</blockquote>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt"><br>
I am not in favor of this change. There
are platform-specific parts of the
build, so IDEs should be able to adapt
to this.<br>
<br>
-- Kevin<br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">What do you think?</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New"">-andy</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-family:"Courier
New""> </span><o:p></o:p></p>
<div style="border:none;border-top:solid
#B5C4DF 1.0pt;padding:3.0pt 0in 0in
0in">
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt"><b><span style="font-size:12.0pt;color:black">From:
</span></b><span style="font-size:12.0pt;color:black">openjfx-dev
<a href="mailto:openjfx-dev-retn@openjdk.org" target="_blank" moz-do-not-send="true">
<openjfx-dev-retn@openjdk.org></a> on behalf of Jeanette
Winzenburg <a href="mailto:fastegal@swingempire.de" target="_blank" moz-do-not-send="true">
<fastegal@swingempire.de></a><br>
<b>Date: </b>Friday, 2022/07/15
at 03:19<br>
<b>To: </b><a href="mailto:openjfx-dev@openjdk.org" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">openjfx-dev@openjdk.org</a>
<a href="mailto:openjfx-dev@openjdk.org" target="_blank" moz-do-not-send="true"><openjfx-dev@openjdk.org></a><br>
<b>Subject: </b>Re: Eclipse:
ClassNotFoundException:
com.sun.prism.shader.FillPgram_Color_Loader</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt"><br>
Zitat von Nir Lisker <a href="mailto:nlisker@gmail.com" target="_blank" moz-do-not-send="true"><nlisker@gmail.com></a>:<br>
<br>
Hi Nir,<br>
<br>
thanks for the explanation - though
I have no idea why Eclipse wants <br>
them (see them again after re-adding
as source folders and all running <br>
as before).<br>
<br>
Not sure where to go from here,
would prefer not to have a local <br>
classpath that differs from the one
in the repository .. hmm<br>
<br>
-- Jeanette<br>
<br>
> To be more specific,
FillPgram_Color_Loader.java is
located under the<br>
> build/gensrc folder, which is
created during the javafx setup
depending on<br>
> the OS. Specifically, it's
under build/gensrc/jsl-prism, which
is<br>
> Windows-specific.<br>
> The change to the classpath
file removed these folders from the
source<br>
> folders list in the build path,
so I don't know why you would get
this<br>
> error. Nothing in the "main"
source folders references these in
compile- or<br>
> build-time.<br>
><br>
> On Fri, Jul 15, 2022 at 12:51
PM Nir Lisker <a href="mailto:nlisker@gmail.com" target="_blank" moz-do-not-send="true">
<nlisker@gmail.com></a>
wrote:<br>
><br>
>> The Eclipse project files
were updated recently in<br>
>> <a href="https://urldefense.com/v3/__https:/github.com/openjdk/jfx/pull/804__;!!ACWV5N9M2RV99hQ!LIzGSIjIMUXkp-9z2M2VFKfJBUQcWoQPJSn6doHpNKi_Zr1Tms-_bnPFrh67esgNcmElmd8oTKoXmE8agVgz$" target="_blank" moz-do-not-send="true">
https://github.com/openjdk/jfx/pull/804</a>. The OS-specific folders
were<br>
>> removed. I tested it and I
had no issue after this change. On
what resource<br>
>> are you getting this error?<br>
>><br>
>> On Fri, Jul 15, 2022 at
12:44 PM Jeanette Winzenburg <<br>
>> <a href="mailto:fastegal@swingempire.de" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">fastegal@swingempire.de</a>>
wrote:<br>
>><br>
>>><br>
>>> Hi,<br>
>>><br>
>>> after synching my
master branch with upstream (has
been a long while<br>
>>> since my previous
update ;), I can't use the Eclipse
projects (base,<br>
>>> controls, graphics are
the only ones I'm keeping for change
in<br>
>>> Eclipse) in another
project: when running any
application it's<br>
>>> throwing the stacktrace
below.<br>
>>><br>
>>> My overall setup worked
fine before (didn't dig yet when it
started<br>
>>> not to), running the
tests inside the fx projects
themselves is fine,<br>
>>> though.<br>
>>><br>
>>> Looks like there is
something missing (native?) related
to graphics.<br>
>>><br>
>>> Where to start looking
for the reason?<br>
>>><br>
>>> Stacktrace:<br>
>>><br>
>>>
java.lang.ClassNotFoundException:<br>
>>>
com.sun.prism.shader.FillPgram_Color_Loader<br>
>>> at<br>
>>><br>
>>>
java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)<br>
>>> at<br>
>>><br>
>>>
java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)<br>
>>> at
java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)<br>
>>> at
java.base/java.lang.Class.forName0(Native
Method)<br>
>>> at
java.base/java.lang.Class.forName(Class.java:332)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.prism.d3d.D3DResourceFactory.createStockShader(D3DResourceFactory.java:426)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.prism.impl.ps.BaseShaderContext.getPaintShader(BaseShaderContext.java:269)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.prism.impl.ps.BaseShaderContext.validatePaintOp(BaseShaderContext.java:500)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.prism.impl.ps.BaseShaderContext.validatePaintOp(BaseShaderContext.java:369)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.prism.impl.ps.BaseShaderGraphics.renderGeneralRoundedPgram(BaseShaderGraphics.java:919)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.prism.impl.ps.BaseShaderGraphics.renderGeneralRoundedRect(BaseShaderGraphics.java:620)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.prism.impl.ps.BaseShaderGraphics.fillRect(BaseShaderGraphics.java:1526)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.javafx.sg.prism.NGRegion.renderBackgroundRectanglesDirectly(NGRegion.java:1112)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.javafx.sg.prism.NGRegion.renderBackgroundRectangle(NGRegion.java:852)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.javafx.sg.prism.NGRegion.renderAsRectangle(NGRegion.java:754)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:575)<br>
>>> at<br>
>>>
javafx.graphics/com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2072)<br>
>>> at<br>
>>>
javafx.graphics/com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1964)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.javafx.tk.quantum.ViewPainter.doPaint(ViewPainter.java:480)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.javafx.tk.quantum.ViewPainter.paintImpl(ViewPainter.java:329)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.javafx.tk.quantum.PresentingPainter.run(PresentingPainter.java:92)<br>
>>> at<br>
>>><br>
>>>
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)<br>
>>> at<br>
>>>
java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)<br>
>>> at<br>
>>>
javafx.graphics/com.sun.javafx.tk.RenderJob.run(RenderJob.java:58)<br>
>>> at<br>
>>><br>
>>>
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)<br>
>>> at<br>
>>><br>
>>>
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:126)<br>
>>> at
java.base/java.lang.Thread.run(Thread.java:835)<br>
>>>
java.lang.InternalError: Error
loading stock shader FillPgram_Color<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.prism.d3d.D3DResourceFactory.createStockShader(D3DResourceFactory.java:432)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.prism.impl.ps.BaseShaderContext.getPaintShader(BaseShaderContext.java:269)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.prism.impl.ps.BaseShaderContext.validatePaintOp(BaseShaderContext.java:500)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.prism.impl.ps.BaseShaderContext.validatePaintOp(BaseShaderContext.java:369)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.prism.impl.ps.BaseShaderGraphics.renderGeneralRoundedPgram(BaseShaderGraphics.java:919)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.prism.impl.ps.BaseShaderGraphics.renderGeneralRoundedRect(BaseShaderGraphics.java:620)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.prism.impl.ps.BaseShaderGraphics.fillRect(BaseShaderGraphics.java:1526)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.javafx.sg.prism.NGRegion.renderBackgroundRectanglesDirectly(NGRegion.java:1112)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.javafx.sg.prism.NGRegion.renderBackgroundRectangle(NGRegion.java:852)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.javafx.sg.prism.NGRegion.renderAsRectangle(NGRegion.java:754)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:575)<br>
>>> at<br>
>>>
javafx.graphics/com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2072)<br>
>>> at<br>
>>>
javafx.graphics/com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1964)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.javafx.tk.quantum.ViewPainter.doPaint(ViewPainter.java:480)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.javafx.tk.quantum.ViewPainter.paintImpl(ViewPainter.java:329)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.javafx.tk.quantum.PresentingPainter.run(PresentingPainter.java:92)<br>
>>> at<br>
>>><br>
>>>
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)<br>
>>> at<br>
>>>
java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)<br>
>>> at<br>
>>>
javafx.graphics/com.sun.javafx.tk.RenderJob.run(RenderJob.java:58)<br>
>>> at<br>
>>><br>
>>>
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)<br>
>>> at<br>
>>><br>
>>>
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)<br>
>>> at<br>
>>><br>
>>>
javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:126)<br>
>>> at
java.base/java.lang.Thread.run(Thread.java:835)<br>
>>><br>
>>> -- Thanks, Jeanette<br>
>>><br>
>>><br>
>>><br>
<br>
<o:p></o:p></p>
</div>
</blockquote>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</blockquote>
</div>
</div>
</blockquote>
<br>
</body>
</html>