<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hi,</p>
    <p>I cannot confirm this. Apache Lucene (just released today in
      version 10.0.0, but also previous veersion 9.12.0) can open
      indexes just fine, both with preview enabled or not. I modified
      the start script of the "Luke" GUI to use classpath mode and add
      the "--enable-preview" flag. All variants work (SPI from declared
      module-info.class SPIs or using META-INF/services).</p>
    <p>If ServiceLoader won't work, Lucene would fails to open any
      indexes.</p>
    <p>To test, just download Apache Lucene, put JDK 23 as first entry
      on your $PATH and start bin/luke.sh. To test other variants change
      the script file by changing to use classpath mode (by invoking
      "org.apache.lucene.luke.app.desktop.LukeMain" class directly and
      change module-path to classpath with "/*").<br>
    </p>
    <p>Uwe<br>
    </p>
    <div class="moz-cite-prefix">Am 13.10.2024 um 13:53 schrieb Robert
      Scholte:<br>
    </div>
    <blockquote type="cite"
      cite="mid:012901db1d66$8e348d40$aa9da7c0$@apache.org">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <meta name="Generator"
        content="Microsoft Word 15 (filtered medium)">
      <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;}p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}.MsoChpDefault
        {mso-style-type:export-only;
        mso-fareast-language:EN-US;}div.WordSection1
        {page:WordSection1;}</style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
      <div class="WordSection1">
        <p class="MsoNormal">Hi,<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"><span lang="EN-US">It seems there’s a
            change in the ServiceLoader, and it looks like regression to
            me.<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">I’ve created a small
            project to reproduce it (I can provide it if wanted and
            confirmed this is indeed a bug).<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">What it basically does
            is just: <o:p></o:p></span></p>
        <p class="MsoNormal" style="text-indent:35.4pt"><span
            lang="EN-US">ServiceLoader.load(Car.class).findFirst().orElseThrow();<o:p></o:p></span></p>
        <p class="MsoNormal" style="text-indent:35.4pt"><span
            lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">This succeeds with
            OpenJDK 22 (with and without preview enabled flag)<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">It also succeeds with
            OpenJDK 23 without the preview flag.<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">However, when adding the
            preview flag I get:<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">java.util.NoSuchElementException:
            No value present<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">        at
            java.base/java.util.Optional.orElseThrow(Optional.java:377)<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">        at
            nl.sourcegrounds.serviceloader.tck.CarTest.<init>(CarTest.java:16)<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">Anyone who can already
            explain this with this small amount of information?<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">Thanks,<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">Robert Scholte<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">These are the details
            for both versions (Windows OS)<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">openjdk version "22"
            2024-03-19<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">OpenJDK Runtime
            Environment (build 22+36-2370)<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">OpenJDK 64-Bit Server VM
            (build 22+36-2370, mixed mode, sharing)<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">openjdk version "23"
            2024-09-17<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">OpenJDK Runtime
            Environment (build 23+37-2369)<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">OpenJDK 64-Bit Server VM
            (build 23+37-2369, mixed mode, sharing)<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
      </div>
    </blockquote>
    <pre class="moz-signature" cols="72">-- 
Uwe Schindler
<a class="moz-txt-link-abbreviated" href="mailto:uschindler@apache.org">uschindler@apache.org</a> 
ASF Member, Member of PMC and Committer of Apache Lucene and Apache Solr
Bremen, Germany
<a class="moz-txt-link-freetext" href="https://lucene.apache.org/">https://lucene.apache.org/</a>
<a class="moz-txt-link-freetext" href="https://solr.apache.org/">https://solr.apache.org/</a></pre>
  </body>
</html>