<div dir="ltr"><div><div><div><div>Just an update,<br><br></div>JDK10 job on CI <a href="https://ci.wildfly.org/viewType.html?buildTypeId=WF_MasterLinuxJdk10">https://ci.wildfly.org/viewType.html?buildTypeId=WF_MasterLinuxJdk10</a><br><br></div>is now running with -Djdk-release=10 which will compile testsuite with release=10<br></div>and should show up problems like this.<br><br>--<br></div>tomaz<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Mar 12, 2018 at 2:09 PM, Tomaž Cerar <span dir="ltr">&lt;<a href="mailto:tomaz.cerar@gmail.com" target="_blank">tomaz.cerar@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div>Hey,<br><br></div>I got it working locally, it needed only 2 testsuite classes changes to not use sun.* internal api.<br><br></div><div>Change is part of my JDK10/11 PR <a href="https://github.com/wildfly/wildfly/pull/10982" target="_blank">https://github.com/wildfly/<wbr>wildfly/pull/10982</a><br></div><div><br></div>To enable it, just run on JDK9/10/11 and pass -Djdk-release=9/10/11 <br></div>which will compile testsuite classes to selected release.<br><br></div>I&#39;ve added it as optionally enabled profile as when you use it, pretty much everything fails ATM.<br></div><div>This way we can only have it on CI for time being.<br></div><div><br></div>--<br></div>tomaz<br><div><div><div><br></div></div></div></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Mar 11, 2018 at 10:37 PM, Stuart Douglas <span dir="ltr">&lt;<a href="mailto:stuart.w.douglas@gmail.com" target="_blank">stuart.w.douglas@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span>On Fri, Mar 9, 2018 at 10:46 AM, Tomaž Cerar <span dir="ltr">&lt;<a href="mailto:tomaz.cerar@gmail.com" target="_blank">tomaz.cerar@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div dir="auto">I can take a look at it.</div><div dir="auto">As long as we don&#39;t use any non public app in tests suite, it should work.</div><div dir="auto"><br></div><div dir="auto">But this still wouldn&#39;t catch issues like this, as we wouldn&#39;t not have deployments with module-info.class present.</div></div></blockquote><div><br></div></span><div>This issue is not about module-info.class, the issue is that all JDK9 classes have their annotations ignored, which would be caught.</div><span class="m_714752371167435324HOEnZb"><font color="#888888"><div><br></div><div>Stuart</div></font></span><div><div class="m_714752371167435324h5"><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div dir="auto"><br></div><div dir="auto">But it would certainly have its benefits.</div><div dir="auto"><br></div><div dir="auto">--</div><div dir="auto">Tomaž </div><div><div class="m_714752371167435324m_6414263756600796024h5"><br><div class="gmail_quote"><div>On Fri, 9 Mar 2018 at 00:13, Stuart Douglas &lt;<a href="mailto:stuart.w.douglas@gmail.com" target="_blank">stuart.w.douglas@gmail.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>Could we look at making one or all of the test suite modules compile using <span style="color:rgb(0,0,0);font-size:12.800000190734863px">-target 9 ? This was the server is still built the same way, but it should pick up issues like this in testing.</span></div><div><div><span style="color:rgb(0,0,0);font-size:12.800000190734863px"><br></span></div><div><span style="color:rgb(0,0,0);font-size:12.800000190734863px">Stuart</span></div></div><div class="gmail_extra"><div class="gmail_quote">On Wed, Mar 7, 2018 at 8:35 PM, Tomaž Cerar <span>&lt;<a href="mailto:tomaz.cerar@gmail.com" target="_blank">tomaz.cerar@gmail.com</a>&gt;</span> wrote:<br></div></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div link="blue" vlink="#954F72" lang="SL"><div class="m_714752371167435324m_6414263756600796024m_-86864307739289460m_457548869530777456m_7180504007603916379WordSection1"><p class="MsoNormal"><span lang="EN-US">Hey Jaikiran,<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">yes there are known issues with Jandex and also with few proposed fixes but we didn’t manage to get them merged and/or released.<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">When it comes to -source / -target 9 compiling there is a reason why we do not use it. Yet!<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">When one switches to compile for -target 9, whole behavior of compiler changes as result we can no longer access non public classes or modules.<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">Unless we add module-info.java for problematic maven modules. <u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">But adding module-info.java means all (maven) compile dependencies of said maven module need to be jigsaw compatible, which at this point is not really there yet.<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">Currently we have to problematic modules that cause issues with this.<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">“cli” in wildfly-core, and “security” in wildfly repository.<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">Both of them have quite big dependency tree where many of its jars are not jigsaw compatible.<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">I do have working branch that has quite some work done on this subject, but until we get dependencies fixed to not violate jigsaw rules, it cannot be completed.<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">Here is non complete list of Jira issues that track jigsaw problems in our dependencies that prevent cli and security to be compiled with target = 9<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><a href="https://issues.jboss.org/browse/SECURITY-986" target="_blank">https://issues.jboss.org/brows<wbr>e/SECURITY-986</a><u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><a href="https://issues.jboss.org/browse/SECURITY-985" target="_blank">https://issues.jboss.org/brows<wbr>e/SECURITY-985</a><u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><a href="https://issues.jboss.org/browse/ISPN-8844" target="_blank">https://issues.jboss.org/brows<wbr>e/ISPN-8844</a><u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><a href="https://issues.jboss.org/browse/AESH-458" target="_blank">https://issues.jboss.org/brows<wbr>e/AESH-458</a><u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><a href="https://issues.jboss.org/browse/AESH-457" target="_blank">https://issues.jboss.org/brows<wbr>e/AESH-457</a><u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">So in short our support of JDK9/10 is currently scoped only to using it as runtime JDK of the server. None of the jigsaw related features will work in deployments.<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">Said all that, jandex problem is real, we will fix it.<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">--<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">tomaz<u></u><u></u></span></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"><u></u> <u></u></p><div style="border:none;border-top:solid #e1e1e1 1.0pt;padding:3.0pt 0cm 0cm 0cm"><p class="MsoNormal" style="border:none;padding:0cm"><b>From: </b><a href="mailto:jai.forums2013@gmail.com" target="_blank">Jaikiran Pai</a><br><b>Sent: </b>sreda, 07. marec 2018 06:11<br><b>To: </b><a href="mailto:wildfly-dev@lists.jboss.org" target="_blank">wildfly-dev@lists.jboss.org</a><br><b>Subject: </b>[wildfly-dev] WildFly Java 9 support &amp; CI job</p></div><div><div class="m_714752371167435324m_6414263756600796024m_-86864307739289460m_457548869530777456h5"><p class="MsoNormal"><u></u> <u></u></p><p><tt><span style="font-size:10.0pt">It appears that the recent release of WildFly 12.0.0.Final has a major issue with Java 9 support for deployments. More specifically, if the application being deployed is compiled using Java 9 JDK then the annotation processing (through Jandex) causes such classes to skip the annotation indexing, effectively missing any annotation information present on them. There&#39;s a JIRA for it here[1] and I <i>think</i> another user here in the forum thread[2] is affected by the same issue. I see that Stuart is already upgrading Jandex which includes a fix, so this mail isn&#39;t really about fixing this issue. </span></tt></p><p><tt><span style="font-size:10.0pt">Given the ease with which this got reproduced and the fact that we missed it in our regular integration job for Java 9 [3], I looked around to see why we couldn&#39;t catch this earlier. It looks like the WildFly pom.xml uses org.jboss:jboss-parent:25 [4] which fixes the target class version of the compilation to 1.8. As a result, even though the CI job uses Java 9 to compile the application sources (in test cases) it ends up with a class version to Java 8 and that explains why these issues weren&#39;t caught earlier.</span></tt></p><p><tt><span style="font-size:10.0pt">So would it be possible to have another variant of this CI job which passes Java 9 as the target version for compiled sources, as a system property value (the pom.xml of jboss-parent allows the value to be configured through properties)? </span></tt></p><p><tt><span style="font-size:10.0pt">[1] <a href="https://issues.jboss.org/browse/WFLY-9961" target="_blank">https://issues.jboss.org/brows<wbr>e/WFLY-9961</a></span></tt></p><p><tt><span style="font-size:10.0pt">[2] <a href="https://developer.jboss.org/thread/277401" target="_blank">https://developer.jboss.org/th<wbr>read/277401</a></span></tt></p><p><tt><span style="font-size:10.0pt">[3] <a href="https://ci.wildfly.org/viewType.html?buildTypeId=WF_MasterLinuxJdk9&amp;branch_WF=__all_branches__" target="_blank">https://ci.wildfly.org/viewTyp<wbr>e.html?buildTypeId=WF_MasterLi<wbr>nuxJdk9&amp;branch_WF=__all_branch<wbr>es__</a></span></tt></p><p>[4] <a href="http://repo1.maven.org/maven2/org/jboss/jboss-parent/25/jboss-parent-25.pom" target="_blank">http://repo1.maven.org/maven2/<wbr>org/jboss/jboss-parent/25/jbos<wbr>s-parent-25.pom</a></p><p>-Jaikiran</p><p class="MsoNormal"><span style="color:black"><u></u> <u></u></span></p></div></div></div></div><br></blockquote></div></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">______________________________<wbr>_________________<br>
wildfly-dev mailing list<br>
<a href="mailto:wildfly-dev@lists.jboss.org" target="_blank">wildfly-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/wildfly-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailma<wbr>n/listinfo/wildfly-dev</a><br></blockquote></div></div></blockquote></div></div></div></div>
</blockquote></div></div></div><br></div></div>
</blockquote></div><br></div>
</div></div></blockquote></div><br></div>